glibc/signal
Joseph Myers 666c0c5efa Fix sigstack namespace (bug 21511).
The sigstack function was removed in the 2001 edition of POSIX, and
the sigstack structure in the 2008 edition.  signal.h wrongly includes
those declarations even for newer POSIX versions.  This patch fixes
the conditions, and conform/ expectations, accordingly.

This patch makes the minimum change to when these declarations are
present, leaving them visible for __USE_MISC as they would previously
have been visible by default.  Arguably these legacy declarations
should only be visible when an old standard is specifically requested,
but implementing that would require arranging for the various sigstack
implementations to be able to see the struct sigstack type despite it
not being in _GNU_SOURCE in that case.

Tested for x86_64.

	[BZ #21511]
	* signal/signal.h: Include <bits/types/struct_sigstack.h> only if
	[(__USE_XOPEN_EXTENDED && !__USE_XOPEN2K8) || __USE_MISC].
	(sigstack): Declare only if [(__USE_XOPEN_EXTENDED &&
	!__USE_XOPEN2K) || __USE_MISC].
	* conform/data/signal.h-data (struct sigstack): Expect type only
	if [!XOPEN2K8 && !POSIX2008].
	(sigstack): Expect function only if [XPG42 || UNIX98].
2017-05-23 16:47:29 +00:00
..
bits/types Remove __need macros from signal.h. 2017-05-20 19:04:43 -04:00
sys
allocrtsig.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
kill.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
killpg.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
Makefile Add one more header to be installed, missed from previous patch. 2017-05-21 09:50:26 -04:00
raise.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
sigaction.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
sigaddset.c Remove __need macros from signal.h. 2017-05-20 19:04:43 -04:00
sigaltstack.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
sigandset.c Remove __need macros from signal.h. 2017-05-20 19:04:43 -04:00
sigblock.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
sigdelset.c Remove __need macros from signal.h. 2017-05-20 19:04:43 -04:00
sigempty.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
sigfillset.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
siggetmask.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
sighold.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
sigignore.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
sigintr.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
sigisempty.c Remove __need macros from signal.h. 2017-05-20 19:04:43 -04:00
sigismem.c Remove __need macros from signal.h. 2017-05-20 19:04:43 -04:00
signal.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
signal.h Fix sigstack namespace (bug 21511). 2017-05-23 16:47:29 +00:00
sigorset.c Remove __need macros from signal.h. 2017-05-20 19:04:43 -04:00
sigpause.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
sigpending.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
sigprocmask.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
sigqueue.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
sigrelse.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
sigreturn.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
sigset.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
sigsetmask.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
sigsetops.c Remove __need macros from signal.h. 2017-05-20 19:04:43 -04:00
sigstack.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
sigsuspend.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
sigtimedwait.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
sigvec.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
sigwait.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
sigwaitinfo.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
sysv_signal.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
tst-raise.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
tst-signal.c
tst-sigset2.c
tst-sigset.c
tst-sigsimple.c Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
Versions Remove __need macros from signal.h. 2017-05-20 19:04:43 -04:00