Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (HP-UX-11.11)
Apropos / Subsearch:
optional field

 sigprocmask(2)						      sigprocmask(2)

      sigprocmask - examine and change blocked signals

      #include <&lt&lt&lt;signal.h>&gt&gt&gt;

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

      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
				    complement 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, or SIGSEGV signals are generated while
      they are blocked, the result is undefined, unless the signal was
      generated by a call to kill() or raise().

 Hewlett-Packard Company	    - 1 -   HP-UX Release 11i: November 2000

 sigprocmask(2)						      sigprocmask(2)

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

      Upon successful completion, sigprocmask() returns 0. Otherwise -1 is
      returned, errno is set to indicate the error, and the process' signal
      mask will be unchanged.

      The sigprocmask() function will fail if:

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

    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 signals and threads, refer to

    LWP (Lightweight Processes) Considerations
      sigprocmask() modifies only the calling LWP's blocked signal mask.

      sigaction(2), sigpending(2), sigsetops(3C), sigsuspend(2), <signal.h>.

      First released in Issue 3.

      Entry included foralignment with the POSIX.1-1988 standard.

 Issue 4
      The following change is incorporated  for	 alignment with the ISO
      POSIX-1 standard:

	   -	     The type of the arguments set and oset are changed from
		     sigset_t* to const sigset_t*.

      Another change is incorporated as follows:

	   -	     The DESCRIPTION section is changed to  indicate that
		     signals can also be generated by raise().

				    - 2 -	  Formatted:  August 2, 2006

 sigprocmask(2)						      sigprocmask(2)


      sigprocmask() fails if any of the following conditions are

      [EFAULT]		  set or oset points to an invalid address.  The
			  reliable detection of this error is implementation

      sigprocmask() was derived from the IEEE POSIX 1003.1-1988 Standard.

      sigaction(2), sigsuspend(2), sigpending(2), sigsetops(3C), signal(5).

      sigprocmask(): AES, SVID3, XPG3, XPG4, FIPS 151-2, POSIX.1

 Hewlett-Packard Company	    - 1 -   HP-UX Release 11i: November 2000