diff options
-rw-r--r-- | include/signal.h | 4 | ||||
-rw-r--r-- | libc/signal/signal.c | 7 | ||||
-rw-r--r-- | libc/signal/sysv_signal.c | 3 |
3 files changed, 8 insertions, 6 deletions
diff --git a/include/signal.h b/include/signal.h index e4e5a10a8..288febd01 100644 --- a/include/signal.h +++ b/include/signal.h @@ -93,8 +93,8 @@ extern __sighandler_t signal (int __sig, __sighandler_t __handler) __THROW; #else /* Make sure the used `signal' implementation is the SVID version. */ -# ifdef __REDIRECT -extern __sighandler_t __REDIRECT (signal, +# ifdef __REDIRECT_NTH +extern __sighandler_t __REDIRECT_NTH (signal, (int __sig, __sighandler_t __handler), __sysv_signal); # else diff --git a/libc/signal/signal.c b/libc/signal/signal.c index 6879ef822..87bd7ab84 100644 --- a/libc/signal/signal.c +++ b/libc/signal/signal.c @@ -28,8 +28,8 @@ sigset_t _sigintr attribute_hidden; /* Set by siginterrupt. */ /* Set the handler for the signal SIG to HANDLER, returning the old handler, or SIG_ERR on error. */ -__sighandler_t -bsd_signal (int sig, __sighandler_t handler) +attribute_hidden __sighandler_t +__bsd_signal (int sig, __sighandler_t handler) { struct sigaction act, oact; @@ -50,6 +50,7 @@ bsd_signal (int sig, __sighandler_t handler) return oact.sa_handler; } -strong_alias(bsd_signal,signal) +strong_alias(__bsd_signal,bsd_signal) +strong_alias(__bsd_signal,signal) libc_hidden_proto(signal) libc_hidden_def(signal) diff --git a/libc/signal/sysv_signal.c b/libc/signal/sysv_signal.c index 45547d1d6..97857a250 100644 --- a/libc/signal/sysv_signal.c +++ b/libc/signal/sysv_signal.c @@ -36,7 +36,7 @@ libc_hidden_proto(sigaction) /* Set the handler for the signal SIG to HANDLER, returning the old handler, or SIG_ERR on error. */ __sighandler_t -sysv_signal (sig, handler) +__sysv_signal (sig, handler) int sig; __sighandler_t handler; { @@ -59,3 +59,4 @@ sysv_signal (sig, handler) return oact.sa_handler; } +strong_alias(__sysv_signal,sysv_signal) |