1#include <signal.h>
2
3int sigismember(const sigset_t* set, int sig) {
4    unsigned s = sig - 1;
5    if (s >= _NSIG - 1)
6        return 0;
7    return !!(set->__bits[s / 8 / sizeof *set->__bits] & 1UL << (s & (8 * sizeof *set->__bits - 1)));
8}
9