diff --git a/include/signal.h b/include/signal.h index 5f39ddbd..9cebddd9 100644 --- a/include/signal.h +++ b/include/signal.h @@ -106,6 +106,7 @@ void (*sigset(int, void (*)(int)))(int); #ifdef _GNU_SOURCE typedef void (*sighandler_t)(int); void (*bsd_signal(int, void (*)(int)))(int); +int sigisemptyset(const sigset_t *); #define SA_NOMASK SA_NODEFER #endif diff --git a/src/signal/sigisemptyset.c b/src/signal/sigisemptyset.c new file mode 100644 index 00000000..e2410514 --- /dev/null +++ b/src/signal/sigisemptyset.c @@ -0,0 +1,9 @@ +#define _GNU_SOURCE +#include +#include + +int sigisemptyset(const sigset_t *set) +{ + static const sigset_t zeroset; + return !memcmp(set, &zeroset, 8); +}