X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=src%2Fsignal%2Fsigprocmask.c;h=297e20c65f825c64d0b63bf4500595aa126e3642;hb=c5faf1bf09c01641e74844c4bfb0f129bc3974a1;hp=3f003afbef890b8965dd17c45db50787246ca89e;hpb=99b8a25e941e54537bf39ca2f265c345f393f112;p=musl diff --git a/src/signal/sigprocmask.c b/src/signal/sigprocmask.c index 3f003afb..297e20c6 100644 --- a/src/signal/sigprocmask.c +++ b/src/signal/sigprocmask.c @@ -1,14 +1,10 @@ #include #include -#include "syscall.h" -#include "libc.h" -#include "pthread_impl.h" -int sigprocmask(int how, const sigset_t *set, sigset_t *old) +int sigprocmask(int how, const sigset_t *restrict set, sigset_t *restrict old) { - if (how > 2U) { - errno = EINVAL; - return -1; - } - return syscall(SYS_rt_sigprocmask, how, set, old, 8); + int r = pthread_sigmask(how, set, old); + if (!r) return r; + errno = r; + return -1; }