freebsd-dev/lib/libc/include
Konstantin Belousov bd6060a1c6 Switch libc from using _sig{procmask,action,suspend} symbols, which
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
2015-08-29 14:25:01 +00:00
..
isc Update our stub resolver to final version of libbind. 2014-08-12 12:36:06 +00:00
block_abi.h Add an extra void* cast to work around a bug in FreeBSD-gcc inherited 2014-04-03 08:08:36 +00:00
compat.h Reassign copyright statements on several files from Advanced 2015-04-23 14:22:20 +00:00
errlst.h Revert r274772: it is not valid on MIPS 2014-11-25 03:50:31 +00:00
fpmath.h
libc_private.h Switch libc from using _sig{procmask,action,suspend} symbols, which 2015-08-29 14:25:01 +00:00
namespace.h Implement the waitid() SUSv4 function using wait6() system call. 2012-11-13 12:55:52 +00:00
nscache.h
nscachedcli.h
nss_tls.h
port_after.h
port_before.h Update our stub resolver to final version of libbind. 2014-08-12 12:36:06 +00:00
reentrant.h
resolv_mt.h
spinlock.h
un-namespace.h Implement the waitid() SUSv4 function using wait6() system call. 2012-11-13 12:55:52 +00:00