sigsetmask()

Set the mask of signals to block

Synopsis:

#include <unix.h>

int sigsetmask( int mask );

Arguments:

mask
A bitmask of the signals that you want to block.

Library:

libc

Use the -l c option to qcc to link against this library. This library is usually included automatically.

Description:

Note:
This function is deprecated. Use sigprocmask() instead.

The sigsetmask() function sets the current signal mask (those signals that are blocked from delivery). Signals are blocked if the corresponding bit in mask is a 1; the macro sigmask() is provided to construct the mask for a given signum.

In normal usage, a signal is blocked using sigblock(). To begin a critical section, variables modified on the occurrence of the signal are examined to determine that there is no work to be done, and the process pauses awaiting work by using sigpause() with the mask returned by sigblock().

It isn't possible to block SIGKILL, SIGSTOP, or SIGCONT; this restriction is silently imposed by the system.

Returns:

The previous set of masked signals.

Classification:

Unix

Safety:
Cancellation pointNo
Interrupt handlerNo
Signal handlerYes
ThreadYes

Caveats:

Use of these interfaces should be restricted to only applications written on BSD platforms. Use of these interfaces with any of the system libraries or in multithreaded applications is unsupported.

Page updated: