Man Linux: Main Page and Category List

NAME

       sigemptyset,  sigfillset,  sigaddset,  sigdelset,  sigismember  - POSIX
       signal set operations.

SYNOPSIS

       #include <signal.h>

       int sigemptyset(sigset_t *set);

       int sigfillset(sigset_t *set);

       int sigaddset(sigset_t *set, int signum);

       int sigdelset(sigset_t *set, int signum);

       int sigismember(const sigset_t *set, int signum);

   Feature Test Macro Requirements for glibc (see feature_test_macros(7)):

       sigemptyset(), sigfillset(), sigaddset(), sigdelset(), sigismember():
       _POSIX_C_SOURCE >= 1 || _XOPEN_SOURCE || _POSIX_SOURCE

DESCRIPTION

       These functions allow the manipulation of POSIX signal sets.

       sigemptyset()  initializes  the  signal set given by set to empty, with
       all signals excluded from the set.

       sigfillset() initializes set to full, including all signals.

       sigaddset() and sigdelset() add and delete respectively  signal  signum
       from set.

       sigismember() tests whether signum is a member of set.

       Objects  of  type  sigset_t  must  be  initialized  by a call to either
       sigemptyset() or sigfillset() before  being  passed  to  the  functions
       sigaddset(),  sigdelset()  and  sigismember()  or  the additional glibc
       functions   described   below   (sigisemptyset(),   sigandset(),    and
       sigorset()).  The results are undefined if this is not done.

RETURN VALUE

       sigemptyset(),  sigfillset(),  sigaddset(), and sigdelset() return 0 on
       success and -1 on error.

       sigismember() returns 1 if signum is a member of set, 0  if  signum  is
       not a member, and -1 on error.

ERRORS

       EINVAL sig is not a valid signal.

CONFORMING TO

       POSIX.1-2001.

NOTES

   Glibc Notes
       If  the  _GNU_SOURCE  feature  test  macro  is defined, then <signal.h>
       exposes three other functions for manipulating signal sets.

       int sigisemptyset(sigset_t *set);
              returns 1 if set contains no signals, and 0 otherwise.

       int sigorset(sigset_t *dest, sigset_t *left, sigset_t *right);
              places the union of the sets left and right in dest.

       int sigandset(sigset_t *dest, sigset_t *left, sigset_t *right);
              places the intersection of the sets left and right in dest.

       sigorset() and sigandset() return 0 on success, and -1 on failure.

       These functions are nonstandard (a few other  systems  provide  similar
       functions) and their use should be avoided in portable applications.

SEE ALSO

       sigaction(2), sigpending(2), sigprocmask(2), sigsuspend(2)

COLOPHON

       This  page  is  part of release 3.24 of the Linux man-pages project.  A
       description of the project, and information about reporting  bugs,  can
       be found at http://www.kernel.org/doc/man-pages/.