From 5c5e45e58bd0da2d74aea3e6631b240fedd707ef Mon Sep 17 00:00:00 2001 From: Rich Felker Date: Thu, 6 Dec 2012 17:05:19 -0500 Subject: move signal.h REG_* macros under _GNU_SOURCE protection they were accidentally exposed under just baseline POSIX, which is a big namespace pollution issue. thankfully glibc only exposes them under _GNU_SOURCE, not under any of its other options, so omitting the pollution in the default _BSD_SOURCE profile does not hurt application compatibility at all. --- arch/i386/bits/signal.h | 42 ++++++++++++++++++++++-------------------- 1 file changed, 22 insertions(+), 20 deletions(-) (limited to 'arch/i386/bits/signal.h') diff --git a/arch/i386/bits/signal.h b/arch/i386/bits/signal.h index 2943756e..aebf3812 100644 --- a/arch/i386/bits/signal.h +++ b/arch/i386/bits/signal.h @@ -1,6 +1,28 @@ #if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) +#ifdef _GNU_SOURCE +#define REG_GS 0 +#define REG_FS 1 +#define REG_ES 2 +#define REG_DS 3 +#define REG_EDI 4 +#define REG_ESI 5 +#define REG_EBP 6 +#define REG_ESP 7 +#define REG_EBX 8 +#define REG_EDX 9 +#define REG_ECX 10 +#define REG_EAX 11 +#define REG_TRAPNO 12 +#define REG_ERR 13 +#define REG_EIP 14 +#define REG_CS 15 +#define REG_EFL 16 +#define REG_UESP 17 +#define REG_SS 18 +#endif + #if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) typedef int greg_t, gregset_t[19]; typedef struct _fpstate { @@ -49,26 +71,6 @@ typedef struct __ucontext { #define SA_RESETHAND 0x80000000 #define SA_RESTORER 0x04000000 -#define REG_GS 0 -#define REG_FS 1 -#define REG_ES 2 -#define REG_DS 3 -#define REG_EDI 4 -#define REG_ESI 5 -#define REG_EBP 6 -#define REG_ESP 7 -#define REG_EBX 8 -#define REG_EDX 9 -#define REG_ECX 10 -#define REG_EAX 11 -#define REG_TRAPNO 12 -#define REG_ERR 13 -#define REG_EIP 14 -#define REG_CS 15 -#define REG_EFL 16 -#define REG_UESP 17 -#define REG_SS 18 - #endif #define SIGHUP 1 -- cgit v1.2.1