HP-UX Reference (11i v1 00/12) - 2 System Calls (vol 5)
__________________________________________________________________________________________________________________________________________________________________________________________________
__________________________________________________________________________________________________________________________________________________________________________________________________
STANDARD Printed by: Nora Chuang [nchuang] STANDARD
/build/1111/BRICK/man2/!!!intro.2
________________________________________________________________
___ ___
s
sigprocmask(2) sigprocmask(2)
NAME
sigprocmask - examine and change blocked signals
SYNOPSIS
#include <signal.h>
int sigprocmask(
int how,
const sigset_t *set,
sigset_t *oset
);
DESCRIPTION
The sigprocmask() function allows the calling process to examine and/or change its signal mask.
If the argument set is not a null pointer, it points to a set of signals to be used to change the currently
blocked set.
The argument how indicates the way in which the set is changed and consists of one of the following values:
SIG_BLOCK The resulting set will be the union of the current set and the signal set
pointed to by set.
SIG_SETMASK The resulting set will be the signal set pointed to by set.
SIG_UNBLOCK The resulting set will be the intersection of the current set andthe comple-
ment of the signal set pointed to by set.
If the argument oset is not a null pointer, the previous mask is stored in the location pointed to by oset.If
set is a null pointer, the value of the argument how is not significant and the process’ signal mask is
unchanged; thus the call can be used to inquire about currently blocked signals.
If there are any pending unblocked signals after the call to
sigprocmask()
, at least one of those signals
will be delivered before the call to
sigprocmask()
returns.
It is not possible to block those signals which cannot be ignored. This is enforced by the system
without causing an error to be indicated.
If any of the
SIGFPE, SIGILL,orSIGSEGV signals are generated while they are blocked, the result is
undefined, unless the signal was generated by a call to kill() or raise().
If
sigprocmask() fails, the process’ signal mask is not changed.
RETURN VALUE
Upon successful completion,
sigprocmask() returns 0. Otherwise −1 is returned,
errno is set to indi-
cate the error, and the process’ signalmask will be unchanged.
ERRORS
The
sigprocmask() function will fail if:
[EINVAL] The value of the how argument is not equal to one of the defined values.
APPLICATION USAGE
Threads Considerations
Since each thread maintains its own blocked signal mask, sigprocmask()
modifies only the calling
thread’s blocked signal mask.
For more information regarding signalsand threads, refer to signal(5).
LWP (Lightweight Processes) Considerations
sigprocmask() modifies only the calling LWP’s blocked signal mask.
SEE ALSO
sigaction(2), sigpending(2), sigsetops(3C), sigsuspend(2), <signal.h>.
CHANGE HISTORY
First released in Issue 3.
HP-UX Release 11i: December 2000 − 1 − Section 2−−355
___
___