bd6060a1c6
are aliases for the syscall stubs and are plt-interposed, to the libc-private aliases of internally interposed sigprocmask() etc. Since e.g. _sigaction is not interposed by libthr, calling signal() removes thr_sighandler() from the handler slot etc. The result was breaking signal semantic and rtld locking. The added __libc_sigprocmask and other symbols are hidden, they are not exported and cannot be called through PLT. The setjmp/longjmp functions for x86 were changed to use direct calls, and since PIC_PROLOGUE only needed for functional PLT indirection on i386, it is removed as well. The PowerPC bug of calling the syscall directly in the setjmp/longjmp implementation is kept as is. Reported by: Pete French <petefrench@ingresso.co.uk> Tested by: Michiel Boland <boland37@xs4all.nl> Reviewed by: jilles (previous version) Sponsored by: The FreeBSD Foundation MFC after: 1 week |
||
---|---|---|
.. | ||
base64.c | ||
byteorder.3 | ||
ether_addr.c | ||
ethers.3 | ||
eui64.3 | ||
eui64.c | ||
gai_strerror.3 | ||
gai_strerror.c | ||
getaddrinfo.3 | ||
getaddrinfo.c | ||
gethostbydns.c | ||
gethostbyht.c | ||
gethostbyname.3 | ||
gethostbynis.c | ||
gethostnamadr.c | ||
getifaddrs.3 | ||
getifaddrs.c | ||
getifmaddrs.3 | ||
getifmaddrs.c | ||
getipnodebyname.3 | ||
getnameinfo.3 | ||
getnameinfo.c | ||
getnetbydns.c | ||
getnetbyht.c | ||
getnetbynis.c | ||
getnetent.3 | ||
getnetnamadr.c | ||
getproto.c | ||
getprotoent.3 | ||
getprotoent.c | ||
getprotoname.c | ||
getservent.3 | ||
getservent.c | ||
hesiod.3 | ||
hesiod.c | ||
if_indextoname.3 | ||
if_indextoname.c | ||
if_nameindex.c | ||
if_nametoindex.c | ||
inet6_opt_init.3 | ||
inet6_option_space.3 | ||
inet6_rth_space.3 | ||
inet6_rthdr_space.3 | ||
inet_net.3 | ||
inet.3 | ||
ip6opt.c | ||
linkaddr.3 | ||
linkaddr.c | ||
Makefile.inc | ||
map_v4v6.c | ||
name6.c | ||
netdb_private.h | ||
nscache.c | ||
nscachedcli.c | ||
nsdispatch.3 | ||
nsdispatch.c | ||
nslexer.l | ||
nsparser.y | ||
nss_backends.h | ||
nss_compat.c | ||
ntoh.c | ||
rcmd.3 | ||
rcmd.c | ||
rcmdsh.3 | ||
rcmdsh.c | ||
recv.c | ||
res_config.h | ||
resolver.3 | ||
rthdr.c | ||
sctp_bindx.3 | ||
sctp_connectx.3 | ||
sctp_freepaddrs.3 | ||
sctp_getaddrlen.3 | ||
sctp_getassocid.3 | ||
sctp_getpaddrs.3 | ||
sctp_opt_info.3 | ||
sctp_recvmsg.3 | ||
sctp_send.3 | ||
sctp_sendmsg.3 | ||
sctp_sys_calls.c | ||
send.c | ||
sockatmark.3 | ||
sockatmark.c | ||
sourcefilter.3 | ||
sourcefilter.c | ||
Symbol.map | ||
vars.c |