---
name: "sigblock"
section: "2freebsd"
platform: "linux"
package: "freebsd-manpages"
version: "12.2-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/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)](/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)](/kill/2.md), [sigaction(2)](/sigaction/2.md), [sigprocmask(2)](/sigprocmask/2.md), [sigsuspend(2)](/sigsuspend/2.md), [sigvec(2)](/sigvec/2.md), [sigsetops(3)](/sigsetops/3.md)

## HISTORY

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