mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-27 19:53:32 +08:00
Fix XPG4.2 bits/sigaction.h namespace (bug 21899).
For XPG4.2, sa_sigaction, SA_ONSTACK, SA_RESETHAND, SA_RESTART and SA_NODEFER should be defined in signal.h, but they are only defined for other standards at present. This patch fixes the various bits/sigaction.h headers accordingly. All the fixes are essentially the same, except those for SPARC and Tile. For SPARC, the header (a) spuriously defined various nonstandard macros for __USE_UNIX98 || defined __USE_XOPEN2K8 and (b) defined some standard macros as aliases of nonstandard ones instead of the other way round. This patch fixes the SPARC header to handle these macros the same way and with the same conditions as those for other architectures, so the standard macros are the primary ones and the other ones are defined only for __USE_MISC and are aliases of the standard ones where applicable. For Tile, the header spuriously defined the nonstandard macro SA_NOPTRACE for __USE_UNIX98 || defined __USE_XOPEN2K8; this is moved to __USE_MISC. (Those nonstandard macros are in a reserved namespace, but it seems desirable to be consistent between architectures as far as possible, and so not define them in standard modes anywhere.) Tested for x86_64, and with build-many-glibcs.py. [BZ #21899] * bits/sigaction.h (struct sigaction): Define sa_handler and sa_sigaction using union also for [__USE_XOPEN_EXTENDED]. (SA_ONSTACK): Change [__USE_UNIX98] condition to [__USE_XOPEN_EXTENDED]. (SA_RESTART): Likewise. (SA_NODEFER): Likewise. (SA_RESETHAND): Likewise. * sysdeps/unix/sysv/linux/alpha/bits/sigaction.h (struct sigaction): Define sa_handler and sa_sigaction using union also for [__USE_XOPEN_EXTENDED]. (SA_ONSTACK): Change [__USE_UNIX98] condition to [__USE_XOPEN_EXTENDED]. (SA_RESTART): Likewise. (SA_NODEFER): Likewise. (SA_RESETHAND): Likewise. * sysdeps/unix/sysv/linux/bits/sigaction.h (struct sigaction): Define sa_handler and sa_sigaction using union also for [__USE_XOPEN_EXTENDED]. (SA_ONSTACK): Change [__USE_UNIX98] condition to [__USE_XOPEN_EXTENDED]. (SA_RESTART): Likewise. (SA_NODEFER): Likewise. (SA_RESETHAND): Likewise. * sysdeps/unix/sysv/linux/hppa/bits/sigaction.h (struct sigaction): Define sa_handler and sa_sigaction using union also for [__USE_XOPEN_EXTENDED]. (SA_ONSTACK): Change [__USE_UNIX98] condition to [__USE_XOPEN_EXTENDED]. (SA_RESTART): Likewise. (SA_NODEFER): Likewise. (SA_RESETHAND): Likewise. * sysdeps/unix/sysv/linux/ia64/bits/sigaction.h (struct sigaction): Define sa_handler and sa_sigaction using union also for [__USE_XOPEN_EXTENDED]. (SA_ONSTACK): Change [__USE_UNIX98] condition to [__USE_XOPEN_EXTENDED]. (SA_RESTART): Likewise. (SA_NODEFER): Likewise. (SA_RESETHAND): Likewise. * sysdeps/unix/sysv/linux/mips/bits/sigaction.h (struct sigaction): Define sa_handler and sa_sigaction using union also for [__USE_XOPEN_EXTENDED]. (SA_ONSTACK): Change [__USE_UNIX98] condition to [__USE_XOPEN_EXTENDED]. (SA_RESTART): Likewise. (SA_NODEFER): Likewise. (SA_RESETHAND): Likewise. * sysdeps/unix/sysv/linux/s390/bits/sigaction.h (struct sigaction): Define sa_handler and sa_sigaction using union also for [__USE_XOPEN_EXTENDED]. (SA_ONSTACK): Change [__USE_UNIX98] condition to [__USE_XOPEN_EXTENDED]. (SA_RESTART): Likewise. (SA_NODEFER): Likewise. (SA_RESETHAND): Likewise. * sysdeps/unix/sysv/linux/sparc/bits/sigaction.h (struct sigaction): Define sa_handler and sa_sigaction using union also for [__USE_XOPEN_EXTENDED]. (SA_ONSTACK): Change [__USE_UNIX98] condition to [__USE_XOPEN_EXTENDED]. (SA_RESTART): Likewise. (SA_NODEFER): Likewise. Define directly rather than as alias. (SA_RESETHAND): Likewise. (SA_INTERRUPT): Define only for [__USE_MISC]. (SA_NOMASK): Define as alias of SA_NODEFER, only for [__USE_MISC]. (SA_ONESHOT): Define as alias of SA_RESETHAND, only for [__USE_MISC]. (SA_STACK): Define only for [__USE_MISC]. * sysdeps/unix/sysv/linux/tile/bits/sigaction.h (struct sigaction): Define sa_handler and sa_sigaction using union also for [__USE_XOPEN_EXTENDED]. (SA_ONSTACK): Change [__USE_UNIX98] condition to [__USE_XOPEN_EXTENDED]. (SA_RESTART): Likewise. (SA_NODEFER): Likewise. (SA_RESETHAND): Likewise. (SA_NOPTRACE): Define only for [__USE_MISC].
This commit is contained in:
parent
d9fee042e2
commit
cd65836b5f
79
ChangeLog
79
ChangeLog
@ -1,5 +1,84 @@
|
||||
2017-08-07 Joseph Myers <joseph@codesourcery.com>
|
||||
|
||||
[BZ #21899]
|
||||
* bits/sigaction.h (struct sigaction): Define sa_handler and
|
||||
sa_sigaction using union also for [__USE_XOPEN_EXTENDED].
|
||||
(SA_ONSTACK): Change [__USE_UNIX98] condition to
|
||||
[__USE_XOPEN_EXTENDED].
|
||||
(SA_RESTART): Likewise.
|
||||
(SA_NODEFER): Likewise.
|
||||
(SA_RESETHAND): Likewise.
|
||||
* sysdeps/unix/sysv/linux/alpha/bits/sigaction.h
|
||||
(struct sigaction): Define sa_handler and sa_sigaction using union
|
||||
also for [__USE_XOPEN_EXTENDED].
|
||||
(SA_ONSTACK): Change [__USE_UNIX98] condition to
|
||||
[__USE_XOPEN_EXTENDED].
|
||||
(SA_RESTART): Likewise.
|
||||
(SA_NODEFER): Likewise.
|
||||
(SA_RESETHAND): Likewise.
|
||||
* sysdeps/unix/sysv/linux/bits/sigaction.h
|
||||
(struct sigaction): Define sa_handler and sa_sigaction using union
|
||||
also for [__USE_XOPEN_EXTENDED].
|
||||
(SA_ONSTACK): Change [__USE_UNIX98] condition to
|
||||
[__USE_XOPEN_EXTENDED].
|
||||
(SA_RESTART): Likewise.
|
||||
(SA_NODEFER): Likewise.
|
||||
(SA_RESETHAND): Likewise.
|
||||
* sysdeps/unix/sysv/linux/hppa/bits/sigaction.h
|
||||
(struct sigaction): Define sa_handler and sa_sigaction using union
|
||||
also for [__USE_XOPEN_EXTENDED].
|
||||
(SA_ONSTACK): Change [__USE_UNIX98] condition to
|
||||
[__USE_XOPEN_EXTENDED].
|
||||
(SA_RESTART): Likewise.
|
||||
(SA_NODEFER): Likewise.
|
||||
(SA_RESETHAND): Likewise.
|
||||
* sysdeps/unix/sysv/linux/ia64/bits/sigaction.h
|
||||
(struct sigaction): Define sa_handler and sa_sigaction using union
|
||||
also for [__USE_XOPEN_EXTENDED].
|
||||
(SA_ONSTACK): Change [__USE_UNIX98] condition to
|
||||
[__USE_XOPEN_EXTENDED].
|
||||
(SA_RESTART): Likewise.
|
||||
(SA_NODEFER): Likewise.
|
||||
(SA_RESETHAND): Likewise.
|
||||
* sysdeps/unix/sysv/linux/mips/bits/sigaction.h
|
||||
(struct sigaction): Define sa_handler and sa_sigaction using union
|
||||
also for [__USE_XOPEN_EXTENDED].
|
||||
(SA_ONSTACK): Change [__USE_UNIX98] condition to
|
||||
[__USE_XOPEN_EXTENDED].
|
||||
(SA_RESTART): Likewise.
|
||||
(SA_NODEFER): Likewise.
|
||||
(SA_RESETHAND): Likewise.
|
||||
* sysdeps/unix/sysv/linux/s390/bits/sigaction.h
|
||||
(struct sigaction): Define sa_handler and sa_sigaction using union
|
||||
also for [__USE_XOPEN_EXTENDED].
|
||||
(SA_ONSTACK): Change [__USE_UNIX98] condition to
|
||||
[__USE_XOPEN_EXTENDED].
|
||||
(SA_RESTART): Likewise.
|
||||
(SA_NODEFER): Likewise.
|
||||
(SA_RESETHAND): Likewise.
|
||||
* sysdeps/unix/sysv/linux/sparc/bits/sigaction.h
|
||||
(struct sigaction): Define sa_handler and sa_sigaction using union
|
||||
also for [__USE_XOPEN_EXTENDED].
|
||||
(SA_ONSTACK): Change [__USE_UNIX98] condition to
|
||||
[__USE_XOPEN_EXTENDED].
|
||||
(SA_RESTART): Likewise.
|
||||
(SA_NODEFER): Likewise. Define directly rather than as alias.
|
||||
(SA_RESETHAND): Likewise.
|
||||
(SA_INTERRUPT): Define only for [__USE_MISC].
|
||||
(SA_NOMASK): Define as alias of SA_NODEFER, only for [__USE_MISC].
|
||||
(SA_ONESHOT): Define as alias of SA_RESETHAND, only for
|
||||
[__USE_MISC].
|
||||
(SA_STACK): Define only for [__USE_MISC].
|
||||
* sysdeps/unix/sysv/linux/tile/bits/sigaction.h
|
||||
(struct sigaction): Define sa_handler and sa_sigaction using union
|
||||
also for [__USE_XOPEN_EXTENDED].
|
||||
(SA_ONSTACK): Change [__USE_UNIX98] condition to
|
||||
[__USE_XOPEN_EXTENDED].
|
||||
(SA_RESTART): Likewise.
|
||||
(SA_NODEFER): Likewise.
|
||||
(SA_RESETHAND): Likewise.
|
||||
(SA_NOPTRACE): Define only for [__USE_MISC].
|
||||
|
||||
* catgets/catgets.c (catgets): Use uintN_t instead of u_intN_t.
|
||||
* catgets/catgetsinfo.h (struct catalog_obj): Likewise.
|
||||
(struct catalog_info): Likewise.
|
||||
|
@ -29,7 +29,7 @@
|
||||
struct sigaction
|
||||
{
|
||||
/* Signal handler. */
|
||||
#ifdef __USE_POSIX199309
|
||||
#if defined __USE_POSIX199309 || defined __USE_XOPEN_EXTENDED
|
||||
union
|
||||
{
|
||||
/* Used if SA_SIGINFO is not set. */
|
||||
@ -52,10 +52,10 @@ struct sigaction
|
||||
};
|
||||
|
||||
/* Bits in `sa_flags'. */
|
||||
#if defined __USE_UNIX98 || defined __USE_MISC
|
||||
#if defined __USE_XOPEN_EXTENDED || defined __USE_MISC
|
||||
# define SA_ONSTACK 0x0001 /* Take signal on signal stack. */
|
||||
#endif
|
||||
#if defined __USE_UNIX98 || defined __USE_XOPEN2K8
|
||||
#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8
|
||||
# define SA_RESTART 0x0002 /* Restart syscall on signal return. */
|
||||
# define SA_NODEFER 0x0010 /* Don't automatically block the signal when
|
||||
its handler is being executed. */
|
||||
|
@ -24,7 +24,7 @@
|
||||
struct sigaction
|
||||
{
|
||||
/* Signal handler. */
|
||||
#ifdef __USE_POSIX199309
|
||||
#if defined __USE_POSIX199309 || defined __USE_XOPEN_EXTENDED
|
||||
union
|
||||
{
|
||||
/* Used if SA_SIGINFO is not set. */
|
||||
@ -51,10 +51,10 @@ struct sigaction
|
||||
#define SA_NOCLDWAIT 0x00000020 /* Don't create zombie on child death. */
|
||||
#define SA_SIGINFO 0x00000040 /* Invoke signal-catching function with
|
||||
three arguments instead of one. */
|
||||
#if defined __USE_UNIX98 || defined __USE_MISC
|
||||
#if defined __USE_XOPEN_EXTENDED || defined __USE_MISC
|
||||
# define SA_ONSTACK 0x00000001 /* Use signal stack by using `sa_restorer'. */
|
||||
#endif
|
||||
#if defined __USE_UNIX98 || defined __USE_XOPEN2K8
|
||||
#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8
|
||||
# define SA_RESTART 0x00000002 /* Restart syscall on signal return. */
|
||||
# define SA_NODEFER 0x00000008 /* Don't automatically block the signal
|
||||
when its handler is being executed. */
|
||||
|
@ -24,7 +24,7 @@
|
||||
struct sigaction
|
||||
{
|
||||
/* Signal handler. */
|
||||
#ifdef __USE_POSIX199309
|
||||
#if defined __USE_POSIX199309 || defined __USE_XOPEN_EXTENDED
|
||||
union
|
||||
{
|
||||
/* Used if SA_SIGINFO is not set. */
|
||||
@ -54,10 +54,10 @@ struct sigaction
|
||||
#define SA_NOCLDWAIT 2 /* Don't create zombie on child death. */
|
||||
#define SA_SIGINFO 4 /* Invoke signal-catching function with
|
||||
three arguments instead of one. */
|
||||
#if defined __USE_UNIX98 || defined __USE_MISC
|
||||
#if defined __USE_XOPEN_EXTENDED || defined __USE_MISC
|
||||
# define SA_ONSTACK 0x08000000 /* Use signal stack by using `sa_restorer'. */
|
||||
#endif
|
||||
#if defined __USE_UNIX98 || defined __USE_XOPEN2K8
|
||||
#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8
|
||||
# define SA_RESTART 0x10000000 /* Restart syscall on signal return. */
|
||||
# define SA_NODEFER 0x40000000 /* Don't automatically block the signal when
|
||||
its handler is being executed. */
|
||||
|
@ -26,7 +26,7 @@
|
||||
struct sigaction
|
||||
{
|
||||
/* Signal handler. */
|
||||
#ifdef __USE_POSIX199309
|
||||
#if defined __USE_POSIX199309 || defined __USE_XOPEN_EXTENDED
|
||||
union
|
||||
{
|
||||
/* Used if SA_SIGINFO is not set. */
|
||||
@ -57,10 +57,10 @@ struct sigaction
|
||||
#define SA_NOCLDWAIT 0x00000080 /* Don't create zombie on child death. */
|
||||
#define SA_SIGINFO 0x00000010 /* Invoke signal-catching function with
|
||||
three arguments instead of one. */
|
||||
#if defined __USE_UNIX98 || defined __USE_MISC
|
||||
#if defined __USE_XOPEN_EXTENDED || defined __USE_MISC
|
||||
# define SA_ONSTACK 0x00000001 /* Use signal stack by using `sa_restorer'. */
|
||||
#endif
|
||||
#if defined __USE_UNIX98 || defined __USE_XOPEN2K8
|
||||
#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8
|
||||
# define SA_RESETHAND 0x00000004 /* Reset to SIG_DFL on entry to handler. */
|
||||
# define SA_NODEFER 0x00000020 /* Don't automatically block the signal
|
||||
when its handler is being executed. */
|
||||
|
@ -24,7 +24,7 @@
|
||||
struct sigaction
|
||||
{
|
||||
/* Signal handler. */
|
||||
#ifdef __USE_POSIX199309
|
||||
#if defined __USE_POSIX199309 || defined __USE_XOPEN_EXTENDED
|
||||
union
|
||||
{
|
||||
/* Used if SA_SIGINFO is not set. */
|
||||
@ -51,10 +51,10 @@ struct sigaction
|
||||
#define SA_NOCLDSTOP 0x00000001 /* Don't send SIGCHLD when children stop. */
|
||||
#define SA_NOCLDWAIT 0x00000002 /* Don't create zombie on child death. */
|
||||
#define SA_SIGINFO 0x00000004
|
||||
#if defined __USE_UNIX98 || defined __USE_MISC
|
||||
#if defined __USE_XOPEN_EXTENDED || defined __USE_MISC
|
||||
# define SA_ONSTACK 0x08000000 /* Use signal stack by using `sa_restorer'. */
|
||||
#endif
|
||||
#if defined __USE_UNIX98 || defined __USE_XOPEN2K8
|
||||
#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8
|
||||
# define SA_RESTART 0x10000000 /* Restart syscall on signal return. */
|
||||
# define SA_NODEFER 0x40000000 /* Don't automatically block the signal
|
||||
when its handler is being executed. */
|
||||
|
@ -27,7 +27,7 @@ struct sigaction
|
||||
int sa_flags;
|
||||
|
||||
/* Signal handler. */
|
||||
#ifdef __USE_POSIX199309
|
||||
#if defined __USE_POSIX199309 || defined __USE_XOPEN_EXTENDED
|
||||
union
|
||||
{
|
||||
/* Used if SA_SIGINFO is not set. */
|
||||
@ -60,10 +60,10 @@ struct sigaction
|
||||
#define SA_NOCLDWAIT 0x00010000 /* Don't create zombie on child death. */
|
||||
#define SA_SIGINFO 0x00000008 /* Invoke signal-catching function with
|
||||
three arguments instead of one. */
|
||||
#if defined __USE_UNIX98 || defined __USE_MISC
|
||||
#if defined __USE_XOPEN_EXTENDED || defined __USE_MISC
|
||||
# define SA_ONSTACK 0x08000000 /* Use signal stack by using `sa_restorer'. */
|
||||
#endif
|
||||
#if defined __USE_UNIX98 || defined __USE_XOPEN2K8
|
||||
#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8
|
||||
# define SA_RESETHAND 0x80000000 /* Reset to SIG_DFL on entry to handler. */
|
||||
# define SA_RESTART 0x10000000 /* Restart syscall on signal return. */
|
||||
# define SA_NODEFER 0x40000000 /* Don't automatically block the signal when
|
||||
|
@ -27,7 +27,7 @@
|
||||
struct sigaction
|
||||
{
|
||||
/* Signal handler. */
|
||||
#ifdef __USE_POSIX199309
|
||||
#if defined __USE_POSIX199309 || defined __USE_XOPEN_EXTENDED
|
||||
union
|
||||
{
|
||||
/* Used if SA_SIGINFO is not set. */
|
||||
@ -57,7 +57,7 @@ struct sigaction
|
||||
struct sigaction
|
||||
{
|
||||
/* Signal handler. */
|
||||
#ifdef __USE_POSIX199309
|
||||
#if defined __USE_POSIX199309 || defined __USE_XOPEN_EXTENDED
|
||||
union
|
||||
{
|
||||
/* Used if SA_SIGINFO is not set. */
|
||||
@ -88,10 +88,10 @@ struct sigaction
|
||||
#define SA_NOCLDWAIT 2 /* Don't create zombie on child death. */
|
||||
#define SA_SIGINFO 4 /* Invoke signal-catching function with
|
||||
three arguments instead of one. */
|
||||
#if defined __USE_UNIX98 || defined __USE_MISC
|
||||
#if defined __USE_XOPEN_EXTENDED || defined __USE_MISC
|
||||
# define SA_ONSTACK 0x08000000 /* Use signal stack by using `sa_restorer'. */
|
||||
#endif
|
||||
#if defined __USE_UNIX98 || defined __USE_XOPEN2K8
|
||||
#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8
|
||||
# define SA_RESTART 0x10000000 /* Restart syscall on signal return. */
|
||||
# define SA_NODEFER 0x40000000 /* Don't automatically block the signal when
|
||||
its handler is being executed. */
|
||||
|
@ -26,7 +26,7 @@
|
||||
struct sigaction
|
||||
{
|
||||
/* Signal handler. */
|
||||
#ifdef __USE_POSIX199309
|
||||
#if defined __USE_POSIX199309 || defined __USE_XOPEN_EXTENDED
|
||||
union
|
||||
{
|
||||
/* Used if SA_SIGINFO is not set. */
|
||||
@ -60,19 +60,21 @@ struct sigaction
|
||||
#define SA_NOCLDWAIT 0x00000100 /* Don't create zombie on child death. */
|
||||
#define SA_SIGINFO 0x00000200 /* Invoke signal-catching function with
|
||||
three arguments instead of one. */
|
||||
#if defined __USE_UNIX98 || defined __USE_MISC
|
||||
#if defined __USE_XOPEN_EXTENDED || defined __USE_MISC
|
||||
# define SA_ONSTACK 0x00000001 /* Use signal stack by using `sa_restorer'. */
|
||||
#endif
|
||||
#if defined __USE_UNIX98 || defined __USE_XOPEN2K8
|
||||
#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8
|
||||
# define SA_RESTART 0x00000002 /* Restart syscall on signal return. */
|
||||
# define SA_INTERRUPT 0x00000010 /* Historical no-op. */
|
||||
# define SA_NOMASK 0x00000020 /* Don't automatically block the signal when
|
||||
# define SA_NODEFER 0x00000020 /* Don't automatically block the signal when
|
||||
its handler is being executed. */
|
||||
# define SA_ONESHOT 0x00000004 /* Reset to SIG_DFL on entry to handler. */
|
||||
# define SA_RESETHAND 0x00000004 /* Reset to SIG_DFL on entry to handler. */
|
||||
#endif
|
||||
#ifdef __USE_MISC
|
||||
# define SA_INTERRUPT 0x00000010 /* Historical no-op. */
|
||||
|
||||
/* Some aliases for the SA_ constants. */
|
||||
# define SA_NODEFER SA_NOMASK
|
||||
# define SA_RESETHAND SA_ONESHOT
|
||||
# define SA_NOMASK SA_NODEFER
|
||||
# define SA_ONESHOT SA_RESETHAND
|
||||
# define SA_STACK SA_ONSTACK
|
||||
#endif
|
||||
|
||||
|
@ -24,7 +24,7 @@
|
||||
struct sigaction
|
||||
{
|
||||
/* Signal handler. */
|
||||
#ifdef __USE_POSIX199309
|
||||
#if defined __USE_POSIX199309 || defined __USE_XOPEN_EXTENDED
|
||||
union
|
||||
{
|
||||
/* Used if SA_SIGINFO is not set. */
|
||||
@ -54,17 +54,17 @@ struct sigaction
|
||||
#define SA_NOCLDWAIT 2 /* Don't create zombie on child death. */
|
||||
#define SA_SIGINFO 4 /* Invoke signal-catching function with
|
||||
three arguments instead of one. */
|
||||
#if defined __USE_UNIX98 || defined __USE_MISC
|
||||
# define SA_NOPTRACE 0x02000000 /* Don't ptrace this signal. */
|
||||
#if defined __USE_XOPEN_EXTENDED || defined __USE_MISC
|
||||
# define SA_ONSTACK 0x08000000 /* Use signal stack by using `sa_restorer'. */
|
||||
#endif
|
||||
#if defined __USE_UNIX98 || defined __USE_XOPEN2K8
|
||||
#if defined __USE_XOPEN_EXTENDED || defined __USE_XOPEN2K8
|
||||
# define SA_RESTART 0x10000000 /* Restart syscall on signal return. */
|
||||
# define SA_NODEFER 0x40000000 /* Don't automatically block the signal when
|
||||
its handler is being executed. */
|
||||
# define SA_RESETHAND 0x80000000 /* Reset to SIG_DFL on entry to handler. */
|
||||
#endif
|
||||
#ifdef __USE_MISC
|
||||
# define SA_NOPTRACE 0x02000000 /* Don't ptrace this signal. */
|
||||
# define SA_INTERRUPT 0x20000000 /* Historical no-op. */
|
||||
|
||||
/* Some aliases for the SA_ constants. */
|
||||
|
Loading…
Reference in New Issue
Block a user