sigpause - Provides a compatibility interface to the sigsuspend function
Standard C Library (libc.so, libc.a)
int sigpause (
int signal_mask );
Interfaces documented on this reference page conform to industry standards as follows:
Refer to the standards(5) reference page for more information about industry standards and associated tags.
Specifies which signals to block.
The sigpause() function call blocks the signals specified by the signal_mask parameter and then suspends execution of the process until delivery of a signal whose action is either to execute a signal-catching function or to end the process. Signal of value i is blocked if the i-th bit of the mask is set. Only signals with values 1 to 31 can be blocked with the sigpause() function. In addition, the sigpause() function does not allow the SIGKILL, SIGSTOP, or SIGCONT signals to be blocked. If a program attempts to block one of these signals, the sigpause() function gives no indication of the error.
The sigpause() function sets the signal mask and waits for an unblocked signal as one atomic operation. This means that signals cannot occur between the operations of setting the mask and waiting for a signal.
The sigpause() function is provided for compatibility with older UNIX systems; its function is a subset of the sigsuspend() function.
[Digital] When compiled in the X/Open UNIX environment, calls to the sigpause() function are internally renamed by prepending _E to the function name. When you are debugging a module that includes the sigpause() function and for which _XOPEN_SOURCE_EXTENDED has been defined, use _Esigpause to refer to the sigpause() call. See standards(5) for information on when the _XOPEN_SOURCE_EXTENDED macro is defined.
Upon successful completion, sigpause() returns 0 (zero). Otherwise, -1 is returned and errno is set to indicate the error.
The sigpause() function sets errno to the specified values for the following conditions: The signal_mask parameter refers to an illegal signal number. [Digital] A signal was caught by the calling process.
Functions: pause(3), sigaction(2), sigblock(2), sigprocmask(2), sigsuspend(2), sigvec(2)
Standards: standards(5) delim off