summaryrefslogtreecommitdiff
path: root/src/signal/sigandset.c
blob: 974186f3d034bf3c77d70ccec6657fd558f2eaf5 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
#define _GNU_SOURCE
#include <signal.h>

#define SST_SIZE (_NSIG/8/sizeof(long))

int sigandset(sigset_t *dest, const sigset_t *left, const sigset_t *right)
{
	unsigned long i = 0, *d = (void*) dest, *l = (void*) left, *r = (void*) right;
	for(; i < SST_SIZE; i++) d[i] = l[i] & r[i];
	return 0;
}