diff options
author | Roland McGrath <roland@hack.frob.com> | 2015-01-08 14:26:51 -0800 |
---|---|---|
committer | Roland McGrath <roland@hack.frob.com> | 2015-01-08 14:26:51 -0800 |
commit | 7b052e33dd35cbee0fcb14a1b58ac2023b40b9af (patch) | |
tree | 4fff6a000a05036b98c500858cba1f781b64cfa5 | |
parent | cc40d25e50621b8762d05c0984d572c1bc7507bf (diff) | |
download | glibc-7b052e33dd35cbee0fcb14a1b58ac2023b40b9af.tar.gz glibc-7b052e33dd35cbee0fcb14a1b58ac2023b40b9af.tar.xz glibc-7b052e33dd35cbee0fcb14a1b58ac2023b40b9af.zip |
NPTL: Fix generic pthread_sigmask.
-rw-r--r-- | ChangeLog | 3 | ||||
-rw-r--r-- | nptl/pthread_sigmask.c | 6 |
2 files changed, 8 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog index 23e1b335b2..676e72c467 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2015-01-08 Roland McGrath <roland@hack.frob.com> + * nptl/pthread_sigmask.c [SIGCANCEL || SIGTIMER || SIGSETXID]: #error. + (pthread_sigmask): Call sigprocmask, not __sigprocmask. + * nptl/nptl-init.c (pthread_functions): Conditionalize .ptr__nptl_setxid initialization on [SIGSETXID]. diff --git a/nptl/pthread_sigmask.c b/nptl/pthread_sigmask.c index 999f07c873..49f47b0ce8 100644 --- a/nptl/pthread_sigmask.c +++ b/nptl/pthread_sigmask.c @@ -18,14 +18,18 @@ #include <errno.h> #include <signal.h> +#include <pthreadP.h> +#if defined SIGCANCEL || defined SIGTIMER || defined SIGSETXID +# error "This implementation assumes no internal-only signal numbers." +#endif int pthread_sigmask (int how, const sigset_t *newmask, sigset_t *oldmask) { /* Here we assume that sigprocmask actually does everything right. The only difference is the return value protocol. */ - int result = __sigprocmask (how, newmask, oldmask); + int result = sigprocmask (how, newmask, oldmask); if (result < 0) result = errno; return result; |