master
 1#include <signal.h>
 2#include <errno.h>
 3
 4int sigaddset(sigset_t *set, int sig)
 5{
 6	unsigned s = sig-1;
 7	if (s >= _NSIG-1 || sig-32U < 3) {
 8		errno = EINVAL;
 9		return -1;
10	}
11	set->__bits[s/8/sizeof *set->__bits] |= 1UL<<(s&8*sizeof *set->__bits-1);
12	return 0;
13}