Viet-Trung Luu | 96b05c1 | 2016-01-11 11:26:36 -0800 | [diff] [blame] | 1 | #include <signal.h> |
2 | #include <errno.h> | ||||
3 | |||||
George Kulakowski | 17e3b04 | 2016-02-18 15:59:50 -0800 | [diff] [blame] | 4 | int sigaddset(sigset_t* set, int sig) { |
5 | unsigned s = sig - 1; | ||||
6 | if (s >= _NSIG - 1 || sig - 32U < 3) { | ||||
7 | errno = EINVAL; | ||||
8 | return -1; | ||||
9 | } | ||||
10 | set->__bits[s / 8 / sizeof *set->__bits] |= | ||||
11 | 1UL << (s & 8 * sizeof *set->__bits - 1); | ||||
12 | return 0; | ||||
Viet-Trung Luu | 96b05c1 | 2016-01-11 11:26:36 -0800 | [diff] [blame] | 13 | } |