xref: /aosp_15_r20/external/musl/src/signal/sigdelset.c (revision c9945492fdd68bbe62686c5b452b4dc1be3f8453)
1*c9945492SAndroid Build Coastguard Worker #include <signal.h>
2*c9945492SAndroid Build Coastguard Worker #include <errno.h>
3*c9945492SAndroid Build Coastguard Worker 
sigdelset(sigset_t * set,int sig)4*c9945492SAndroid Build Coastguard Worker int sigdelset(sigset_t *set, int sig)
5*c9945492SAndroid Build Coastguard Worker {
6*c9945492SAndroid Build Coastguard Worker 	unsigned s = sig-1;
7*c9945492SAndroid Build Coastguard Worker 	if (s >= _NSIG-1 || sig-32U < 3) {
8*c9945492SAndroid Build Coastguard Worker 		errno = EINVAL;
9*c9945492SAndroid Build Coastguard Worker 		return -1;
10*c9945492SAndroid Build Coastguard Worker 	}
11*c9945492SAndroid Build Coastguard Worker 	set->__bits[s/8/sizeof *set->__bits] &=~(1UL<<(s&8*sizeof *set->__bits-1));
12*c9945492SAndroid Build Coastguard Worker 	return 0;
13*c9945492SAndroid Build Coastguard Worker }
14