1SIGPAUSE(3) Linux Programmer's Manual SIGPAUSE(3)
2
3
4
6 sigpause - atomically release blocked signals and wait for interrupt
7
9 #include <signal.h>
10
11 int sigpause(int sigmask); /* BSD */
12
13 int sigpause(int sig); /* System V / Unix95 */
14
16 Don't use this function. Use sigsuspend(2) instead.
17
18 The function sigpause() is designed to wait for some signal. It
19 changes the process's signal mask (set of blocked signals), and then
20 waits for a signal to arrive. Upon arrival of a signal, the original
21 signal mask is restored.
22
24 If sigpause() returns, it was interrupted by a signal and the return
25 value is -1 with errno set to EINTR.
26
28 The classical BSD version of this function appeared in 4.2BSD. It sets
29 the process's signal mask to sigmask. Unix95 standardized the incom‐
30 patible System V version of this function, which removes only the spec‐
31 ified signal sig from the process' signal mask. The unfortunate situa‐
32 tion with two incompatible functions with the same name was solved by
33 the sigsuspend(2) function, that takes a sigset_t * parameter (instead
34 of an int).
35
36 On Linux, this routine is a system call only on the Sparc (sparc64)
37 architecture. Libc4 and libc5 only know about the BSD version. Glibc
38 uses the BSD version unless _XOPEN_SOURCE is defined.
39
41 kill(2), sigaction(2), sigprocmask(2), sigsuspend(2), sigblock(3),
42 sigvec(3)
43
44
45
46Linux 2.6 2005-12-01 SIGPAUSE(3)