Provided by: manpages-dev_2.17-1_all bug

NAME

       sigpause - atomically release blocked signals and wait for interrupt

SYNOPSIS

       #include <signal.h>

       int sigpause(int sigmask);  /* BSD */

       int sigpause(int sig);      /* Unix95 */

DESCRIPTION

       Don’t use this function. Use sigsuspend(2) instead.

       The  function  sigpause()  is  designed  to  wait  for some signal.  It
       changes the process’ signal mask (set of  blocked  signals),  and  then
       waits  for  a signal to arrive.  Upon arrival of a signal, the original
       signal mask is restored.

RETURN VALUE

       If sigpause() returns, it was interrupted by a signal  and  the  return
       value is -1 with errno set to EINTR.

HISTORY

       The classical BSD version of this function appeared in 4.2BSD.  It sets
       the process’ signal mask to sigmask.  When the number  of  signals  was
       increased  above  32,  this  version  was  replaced by the incompatible
       Unix95 one, which removes  only  the  specified  signal  sig  from  the
       process’  signal mask.  The unfortunate situation with two incompatible
       functions with the same name was solved by the sigsuspend(2)  function,
       that takes a sigset_t * parameter (instead of an int).

       On  Linux,  this  routine  is a system call only on the Sparc (sparc64)
       architecture. Libc4 and libc5 only know about the BSD  version.   Glibc
       uses the BSD version unless _XOPEN_SOURCE is defined.

SEE ALSO

       kill(2),   sigaction(2),  sigblock(2),  sigprocmask(2),  sigsuspend(2),
       sigvec(2)