PTHREAD_SIGMASK(3) | Library Functions Manual | PTHREAD_SIGMASK(3)

# NAME

pthread_sigmask — examine and/or change a thread's signal mask

# LIBRARY

POSIX Threads Library (libpthread, -lpthread)

# SYNOPSIS

#include <signal.h>
int
pthread_sigmask(int how, const sigset_t * restrict set, sigset_t * restrict oset);

# DESCRIPTION

The pthread_sigmask() function examines and/or changes the calling thread's signal mask.
If set is not `NULL`, it specifies a set of signals to be modified, and how specifies what to set the signal mask to:

`SIG_BLOCK`
  Union of the current mask and set.
`SIG_UNBLOCK`
  Intersection of the current mask and the complement of set.
`SIG_SETMASK`
  set.

If oset is not `NULL`, the previous signal mask is stored in the location pointed to by oset.
`SIGKILL` and `SIGSTOP` cannot be blocked, and will be silently ignored if included in the signal mask.

# RETURN VALUES

If successful, pthread_sigmask() returns 0. Otherwise, an error is returned.

# ERRORS

pthread_sigmask() shall fail if:

[`EINVAL`]
  how is not one of the defined values.

# SEE ALSO

sigaction(2), sigpending(2), sigprocmask(2), sigsuspend(2), sigwait(2), sigsetops(3)

# STANDARDS

The function conforms to IEEE Std 1003.1-2001 (“POSIX.1”).

July 9, 2010 | NetBSD 8.2