Files
musl/src/signal/sigaddset.c
Rich Felker 76fbf6ad4b change sigset_t functions to restrict to _NSIG
the idea here is to avoid advertising signals that don't exist and to
make these functions safe to call (e.g. from within other parts of the
implementation) on fake sigset_t objects which do not have the HURD
padding.
2013-08-09 21:25:29 -04:00

14 lines
259 B
C

#include <signal.h>
#include <errno.h>
int sigaddset(sigset_t *set, int sig)
{
unsigned s = sig-1;
if (s >= _NSIG-1 || sig-32U < 3) {
errno = EINVAL;
return -1;
}
set->__bits[s/8/sizeof *set->__bits] |= 1UL<<(s&8*sizeof *set->__bits-1);
return 0;
}