SIGPAUSE(3) | Library Functions Manual | SIGPAUSE(3)

# NAME

`sigpause` — atomically release blocked signals and wait for interrupt

# SYNOPSIS

`#include <signal.h>`

int
`sigpause`(int sigmask);

# DESCRIPTION

This interface is made obsolete by sigsuspend(2).

`sigpause`() assigns sigmask to the set of masked signals and then waits for a signal to arrive; on return the set of masked signals is restored. sigmask is usually 0 to indicate that no signals are to be blocked. `sigpause`() always terminates by being interrupted, returning -1 with errno set to `EINTR`.

# SEE ALSO

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

# HISTORY

A `sigpause`() system call first appeared in 4.2BSD. In 4.3BSD-Reno, it was reimplemented as a wrapper around sigsuspend(2). The old system call was kept for compatibility until OpenBSD 4.9.

December 13, 2022 | Debian