Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
sigprocmask(2)			 System	Calls			sigprocmask(2)

NAME
       sigprocmask - change and/or examine caller's signal mask

SYNOPSIS
       #include	<signal.h>

       int sigprocmask(int how,	const sigset_t *set, sigset_t *oset);

DESCRIPTION
       The  sigprocmask()  function  is	 used  to  examine  and/or  change the
       caller's	signal mask. If	the value is  SIG_BLOCK, the set pointed to by
       the   set argument is added to the current signal mask. If the value is
       SIG_UNBLOCK, the	set pointed by the  set	argument is removed  from  the
       current	signal	mask. If the value is  SIG_SETMASK, the	current	signal
       mask is replaced	by the set pointed to by the   set  argument.  If  the
       oset  argument  is  not	NULL, the previous mask	is stored in the space
       pointed to by oset. If the value	of the
	set argument is	 NULL, the value   how	is  not	 significant  and  the
       caller's	 signal	 mask  is unchanged; thus, the call can	be used	to in-
       quire about currently blocked signals.

       If there	are any	pending	unblocked signals after	the call  to  sigproc-
       mask(), at least	one of those signals will be delivered before the call
       to sigprocmask()	returns.

       It is not possible to block those signals that cannot be	 ignored  this
       restriction is silently	imposed	by the system. See sigaction(2).

       If sigprocmask()	fails, the caller's signal mask	is not changed.

RETURN VALUES
       Upon  successful	 completion,  0	is returned. Otherwise,	-1 is returned
       and errno is set	to indicate the	error.

ERRORS
       The sigprocmask() function will fail if:

       EFAULT
	     The set or	 oset argument points to an illegal address.

       EINVAL
	     The value of the  how argument is not equal to one	of the defined
	     values.

ATTRIBUTES
       See attributes(5) for descriptions of the following attributes:

       +-----------------------------+-----------------------------+
       |      ATTRIBUTE	TYPE	     |	    ATTRIBUTE VALUE	   |
       +-----------------------------+-----------------------------+
       |MT-Level		     |Async-Signal-Safe		   |
       +-----------------------------+-----------------------------+

SEE ALSO
       sigaction(2),   signal(3C),  sigsetops(3C),  thr_sigsetmask(3THR),  at-
       tributes(5), signal(3HEAD)

NOTES
       In a multithreaded program, the call to	sigpromask() impacts only  the
       calling	thread's  signal  mask and is therefore	identical to a call to
       thr_sigsetmask(3THR).

       Signals that are	generated synchronously	should not be masked. If  such
       a signal	is blocked and delivered, the receiving	process	is killed.

SunOS 5.9			  23 May 1997			sigprocmask(2)

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUES | ERRORS | ATTRIBUTES | SEE ALSO | NOTES

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=sigprocmask&sektion=2&manpath=SunOS+5.9>

home | help