SIGSETMASK(2) System Calls SIGSETMASK(2)
NAME
sigsetmask - set signal mask
SYNOPSIS
#include <signal.h>
long sigsetmask(long mask);
#define sigmask(signum)
DESCRIPTION
sigsetmask is usually used to restore signal masks after modifications
by sigblock. The parameter mask is the absolute value to which the
process signal mask will be set. (Compare to sigblock, which adds the
argument to the set of blocked signals.)
If there are pending instances of signals which become unblocked by the
sigsetmask call, they are 'released' into the system signal queue and
their 'pending' status is cleared. The system signal queue is main‐
tained by the kernel null process, and is used in situations where sig‐
nals could not normally be sent (such as in interrupt handlers).
sigmask is a macro that can be used to calculate signal masks for
sigsetmask. It takes a signal number, as listed in signal(2), as an
argument and returns a mask corresponding to that signal.
RETURN VALUE
The previous value of the signal mask is returned from sigsetmask.
CAVEATS
If somehow the process re-blocks a signal released by sigsetmask before
the system signal queue processes it, it will be blocked and marked as
pending. This can happen if a signal handler makes a sigblock call.
SEE ALSO
kill(2), sigblock(2), signal(2)
GNO 19 January 1997 SIGSETMASK(2)
Man(1) output converted with
man2html