diff options
Diffstat (limited to 'lib/libc/signal/sigprocmask.c')
| -rw-r--r-- | lib/libc/signal/sigprocmask.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/lib/libc/signal/sigprocmask.c b/lib/libc/signal/sigprocmask.c new file mode 100644 index 00000000..54063b9d --- /dev/null +++ b/lib/libc/signal/sigprocmask.c @@ -0,0 +1,17 @@ +#include <signal.h> +#include <syscall.h> + +int sigprocmask(int how, const sigset_t *restrict set, sigset_t *restrict oset) +{ + long ret; + sigset_t oldset = { 0 }; + + ret = syscall(rt_sigprocmask, how, set, &oldset, sizeof(sigset_t)); + + if (ret < 0) + return -1; + + if (oset) + *oset = oldset; + return 0; +} |
