blob: f62c7fec1ae28bdb7548877e6d527f7f5533cc4f (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
#define _GNU_SOURCE
#include <signal.h>
#include <errno.h>
#define SST_SIZE (sizeof(sigset_t) / sizeof(long))
int sigandset(sigset_t *dest, sigset_t *left, sigset_t *right)
{
if(!dest || !left || !right) {
errno = EINVAL;
return -1;
}
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;
}
|