.TH sigpause() "" "" "System Call (libc)"
.PC "Pause until a given signal is received"
.B "#include <signal.h>
\fBint sigpause (\fIsigtype\^\fB)\fR
\fBint \fIsigtype\^\fB;\fR
.PP
.B sigpause()
is a member of the
.B sigset()
family of signal-handling system calls.
It pauses until the signal
.I sigtype
is received.
If, however, a signal of type
.I sigtype
had previously been ``placed on hold'' by a call to
.BR sighold() ,
.B sigpause()
releases the signal for processing, just as if you had invoked the system call
.BR sigrelse() .
.PP
See the Lexicon entry for
.B signal()
for a list of recognized signals.
.PP
.B sigpause()
returns zero if all went well.
If something went wrong, it returns \-1 and sets
.B errno
to an appropriate value.
.SH "See Also"
.Xr "libc," libc
.Xr "sighold()," sighold
.Xr "sigignore()," sigignore
.Xr "signal()," signal
.Xr "sigrelse()," sigrelse
.Xr "sigset()" sigset
.SH Notes
For more information on the
.B sigset()
family of signal-handling system calls, see the Lexicon entry for
.BR sigset() .
.PP
Note that invoking
.DM
	sigpause(SIGCHLD)
.DE
.PP
with no children pauses forever.
