sigdelset.c raw

   1  #include <signal.h>
   2  #include <errno.h>
   3  
   4  int sigdelset(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  }
  14