---
name: "sigblock"
section: "2freebsd"
platform: "linux"
package: "freebsd-manpages"
version: "12.2-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://carta.tech/man/sigblock/2freebsd"
---

# sigblock(2freebsd)

manipulate current signal mask

## NAME

**sigsetmask**, **sigblock** – manipulate current signal mask

## LIBRARY

Standard C Library (libc, -lc)

## SYNOPSIS

**#include \<signal.h\>**

*int*\

**sigsetmask**(*int mask*);

*int*\

**sigblock**(*int mask*);

*int*\

**sigmask**(*int signum*);

## DESCRIPTION

This interface is made obsolete by: [sigprocmask(2)](/man/sigprocmask/2.md).

The **sigsetmask**() function sets the current signal mask to the specified *mask*. Signals are blocked from delivery if the corresponding bit in *mask* is a 1. The **sigblock**() function adds the signals in the specified *mask* to the current signal mask, rather than overwriting it as **sigsetmask**() does. The macro **sigmask**() is provided to construct the mask for a given *signum*.

The system quietly disallows SIGKILL or SIGSTOP to be blocked.

## RETURN VALUES

The **sigblock**() and **sigsetmask**() functions return the previous set of masked signals.

## SEE ALSO

[kill(2)](/man/kill/2.md), [sigaction(2)](/man/sigaction/2.md), [sigprocmask(2)](/man/sigprocmask/2.md), [sigsuspend(2)](/man/sigsuspend/2.md), [sigvec(2)](/man/sigvec/2.md), [sigsetops(3)](/man/sigsetops/3.md)

## HISTORY

The **sigsetmask**() and **sigblock**() functions first appeared in 4.2BSD and have been deprecated.
