diff options
author | "Steven J. Hill" <sjhill@realitydiluted.com> | 2005-12-08 04:57:34 +0000 |
---|---|---|
committer | "Steven J. Hill" <sjhill@realitydiluted.com> | 2005-12-08 04:57:34 +0000 |
commit | a25d5bd4971bb460bd87c684d066fd58359faf32 (patch) | |
tree | b3a4b5ef6799bd0c3924fc9ba00d65023577f101 /libc/signal | |
parent | 2efb2ef4f916151b8abe51fc87ed7b5411d1d91e (diff) | |
download | uClibc-alpine-a25d5bd4971bb460bd87c684d066fd58359faf32.tar.bz2 uClibc-alpine-a25d5bd4971bb460bd87c684d066fd58359faf32.tar.xz |
Fix 'sigaction' for NPTL and other thread models.
Diffstat (limited to 'libc/signal')
-rw-r--r-- | libc/signal/sigaction.c | 21 | ||||
-rw-r--r-- | libc/signal/sigignore.c | 2 | ||||
-rw-r--r-- | libc/signal/sigintr.c | 2 | ||||
-rw-r--r-- | libc/signal/signal.c | 2 | ||||
-rw-r--r-- | libc/signal/sigset.c | 2 | ||||
-rw-r--r-- | libc/signal/sysv_signal.c | 2 |
6 files changed, 7 insertions, 24 deletions
diff --git a/libc/signal/sigaction.c b/libc/signal/sigaction.c index 66ed7ad8c..5f926c0b8 100644 --- a/libc/signal/sigaction.c +++ b/libc/signal/sigaction.c @@ -28,17 +28,12 @@ translate it here. */ #include <bits/kernel_sigaction.h> -int __libc_sigaction (int sig, const struct sigaction *act, struct sigaction *oact); - #if defined __NR_rt_sigaction /* If ACT is not NULL, change the action for SIG to *ACT. If OACT is not NULL, put the old action for SIG in *OACT. */ -int -__libc_sigaction (sig, act, oact) - int sig; - const struct sigaction *act; - struct sigaction *oact; +int attribute_hidden +__sigaction_internal (int sig, const struct sigaction *act, struct sigaction *oact) { int result; struct kernel_sigaction kact, koact; @@ -74,11 +69,8 @@ __libc_sigaction (sig, act, oact) /* If ACT is not NULL, change the action for SIG to *ACT. If OACT is not NULL, put the old action for SIG in *OACT. */ -int -__libc_sigaction (sig, act, oact) - int sig; - const struct sigaction *act; - struct sigaction *oact; +int attribute_hidden +__sigaction_internal (int sig, const struct sigaction *act, struct sigaction *oact) { int result; struct old_kernel_sigaction kact, koact; @@ -111,6 +103,7 @@ __libc_sigaction (sig, act, oact) #endif #ifndef LIBC_SIGACTION -weak_alias (__libc_sigaction, __sigaction) -weak_alias (__libc_sigaction, sigaction) +strong_alias(__sigaction_internal,__libc_sigaction) +weak_alias(__sigaction_internal,__sigaction) +weak_alias(__sigaction_internal,sigaction) #endif diff --git a/libc/signal/sigignore.c b/libc/signal/sigignore.c index 490cc3814..407b52e2a 100644 --- a/libc/signal/sigignore.c +++ b/libc/signal/sigignore.c @@ -18,8 +18,6 @@ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. */ -#define sigaction __sigaction_internal - #define _GNU_SOURCE #include <errno.h> #define __need_NULL diff --git a/libc/signal/sigintr.c b/libc/signal/sigintr.c index c55d58618..8315c3a6b 100644 --- a/libc/signal/sigintr.c +++ b/libc/signal/sigintr.c @@ -16,8 +16,6 @@ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. */ -#define sigaction __sigaction_internal - #include <stddef.h> #include <signal.h> #include <errno.h> diff --git a/libc/signal/signal.c b/libc/signal/signal.c index f8355258a..7df88eff0 100644 --- a/libc/signal/signal.c +++ b/libc/signal/signal.c @@ -18,8 +18,6 @@ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. */ -#define sigaction __sigaction_internal - #include <errno.h> #include <signal.h> #include <string.h> /* For the real memset prototype. */ diff --git a/libc/signal/sigset.c b/libc/signal/sigset.c index 7860669b6..350e3cb2d 100644 --- a/libc/signal/sigset.c +++ b/libc/signal/sigset.c @@ -16,8 +16,6 @@ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. */ -#define sigaction __sigaction_internal - #include <errno.h> #define __need_NULL #include <stddef.h> diff --git a/libc/signal/sysv_signal.c b/libc/signal/sysv_signal.c index 78c9696dd..576fc0b8d 100644 --- a/libc/signal/sysv_signal.c +++ b/libc/signal/sysv_signal.c @@ -16,8 +16,6 @@ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. */ -#define sigaction __sigaction_internal - #include <errno.h> #include <signal.h> #include <string.h> /* For the real memset prototype. */ |