72 lines
1.4 KiB
Groff
72 lines
1.4 KiB
Groff
.\" $OpenBSD: pthread_sigmask.3,v 1.11 2017/05/29 09:40:02 deraadt Exp $
|
|
.\"
|
|
.\"
|
|
.\" David Leonard, 1999. Public Domain.
|
|
.\"
|
|
.Dd $Mdocdate: May 29 2017 $
|
|
.Dt PTHREAD_SIGMASK 3
|
|
.Os
|
|
.Sh NAME
|
|
.Nm pthread_sigmask
|
|
.Nd examine and/or change a thread's signal mask
|
|
.Sh SYNOPSIS
|
|
.In signal.h
|
|
.Ft int
|
|
.Fn pthread_sigmask "int how" "const sigset_t *set" "sigset_t *oset"
|
|
.Sh DESCRIPTION
|
|
The
|
|
.Fn pthread_sigmask
|
|
function examines and/or changes the calling thread's signal mask.
|
|
.Pp
|
|
If
|
|
.Fa set
|
|
is not
|
|
.Dv NULL ,
|
|
it specifies a set of signals to be modified, and
|
|
.Fa how
|
|
specifies what to set the signal mask to:
|
|
.Bl -tag -width SIG_UNBLOCK
|
|
.It Dv SIG_BLOCK
|
|
Union of the current mask and
|
|
.Fa set .
|
|
.It Dv SIG_UNBLOCK
|
|
Intersection of the current mask and the complement of
|
|
.Fa set .
|
|
.It Dv SIG_SETMASK
|
|
.Fa set .
|
|
.El
|
|
.Pp
|
|
If
|
|
.Fa oset
|
|
is not NULL, the previous signal mask is stored in the location pointed to by
|
|
.Fa oset .
|
|
.Pp
|
|
.Dv SIGKILL
|
|
and
|
|
.Dv SIGSTOP
|
|
cannot be blocked, and will be silently ignored if included in the signal mask.
|
|
.Sh RETURN VALUES
|
|
If successful,
|
|
.Fn pthread_sigmask
|
|
returns 0.
|
|
Otherwise, an error is returned.
|
|
.Sh ERRORS
|
|
.Fn pthread_sigmask
|
|
will fail if:
|
|
.Bl -tag -width Er
|
|
.It Bq Er EINVAL
|
|
.Fa how
|
|
is not one of the defined values.
|
|
.El
|
|
.Sh SEE ALSO
|
|
.Xr sigaction 2 ,
|
|
.Xr sigpending 2 ,
|
|
.Xr sigprocmask 2 ,
|
|
.Xr sigsuspend 2 ,
|
|
.Xr pthreads 3 ,
|
|
.Xr sigaddset 3
|
|
.Sh STANDARDS
|
|
.Fn pthread_sigmask
|
|
conforms to
|
|
.St -p1003.1-96 .
|