Provided by: manpages-posix-dev_2.16-1_all bug

NAME

       sigemptyset - initialize and empty a signal set

SYNOPSIS

       #include <signal.h>

       int sigemptyset(sigset_t *set);

DESCRIPTION

       The  sigemptyset()  function  initializes  the signal set pointed to by set, such that all
       signals defined in IEEE Std 1003.1-2001 are excluded.

RETURN VALUE

       Upon successful completion, sigemptyset() shall return 0; otherwise, it  shall  return  -1
       and set errno to indicate the error.

ERRORS

       No errors are defined.

       The following sections are informative.

EXAMPLES

       None.

APPLICATION USAGE

       None.

RATIONALE

       The  implementation  of the sigemptyset() (or sigfillset()) function could quite trivially
       clear (or set) all the bits in the signal set.  Alternatively, it would be  reasonable  to
       initialize  part of the structure, such as a version field, to permit binary-compatibility
       between releases where the size of the set varies. For such reasons, either  sigemptyset()
       or  sigfillset() must be called prior to any other use of the signal set, even if such use
       is read-only (for example, as an argument to sigpending()). This function is not  intended
       for dynamic allocation.

       The sigfillset() and sigemptyset() functions require that the resulting signal set include
       (or exclude) all the signals defined in this volume of IEEE Std 1003.1-2001.  Although  it
       is  outside  the scope of this volume of IEEE Std 1003.1-2001 to place this requirement on
       signals that are implemented as extensions, it is recommended that  implementation-defined
       signals  also  be  affected  by these functions. However, there may be a good reason for a
       particular signal not to be affected. For example, blocking or ignoring an implementation-
       defined  signal  may  have  undesirable  side effects, whereas the default action for that
       signal is harmless.  In such a case, it would be  preferable  for  such  a  signal  to  be
       excluded from the signal set returned by sigfillset().

       In  early  proposals there was no distinction between invalid and unsupported signals (the
       names of optional signals that were not supported by an implementation were not defined by
       that  implementation).   The  [EINVAL]  error  was  thus specified as a required error for
       invalid signals. With that distinction, it is not necessary to require implementations  of
       these  functions  to  determine  whether an optional signal is actually supported, as that
       could have a significant performance impact for little value. The error  could  have  been
       required  for  invalid  signals  and  optional  for  unsupported  signals, but this seemed
       unnecessarily complex. Thus, the error is optional in both cases.

FUTURE DIRECTIONS

       None.

SEE ALSO

       Signal Concepts , sigaction() , sigaddset() , sigdelset() , sigfillset() , sigismember() ,
       sigpending()   ,   sigprocmask()   ,   sigsuspend()  ,  the  Base  Definitions  volume  of
       IEEE Std 1003.1-2001, <signal.h>

COPYRIGHT

       Portions of this text are reprinted and  reproduced  in  electronic  form  from  IEEE  Std
       1003.1,  2003  Edition,  Standard  for Information Technology -- Portable Operating System
       Interface (POSIX), The Open Group Base Specifications Issue 6, Copyright (C) 2001-2003  by
       the  Institute  of  Electrical  and  Electronics Engineers, Inc and The Open Group. In the
       event of any discrepancy between this version and the original IEEE  and  The  Open  Group
       Standard,  the  original  IEEE  and  The  Open Group Standard is the referee document. The
       original Standard can be obtained online at http://www.opengroup.org/unix/online.html .