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

FreeBSD Manual Pages

  
 
  

home | help
sigset(3C)							    sigset(3C)

NAME
       sigset, sighold,	sigrelse, sigignore, sigpause -	signal management

SYNOPSIS
DESCRIPTION
       The system defines a set	of signals that	can be delivered to a process.
       The set of signals is defined in	signal(5), along with the meaning  and
       side effects of each signal.  An	alternate mechanism for	handling these
       signals is defined here.	 The facilities	described here should  not  be
       used  in	 conjunction  with  the	 other facilities described under sig-
       nal(2),	sigvector(2),  sigblock(2),  sigsetmask(2),  sigpause(3C)  and
       sigspace(2).

       allows the calling process to choose one	of four	ways to	handle the re-
       ceipt of	a specific signal.  sig	specifies the signal and  func	speci-
       fies the	choice.

       sig can be any one of the signals described under signal(5) except or

       func  is	 assigned  one of four values: or a function address.  The ac-
       tions prescribed	by and are described under signal(5).  The action pre-
       scribed by and function address are described below:

       Hold signal.

		      The signal sig is	held upon receipt.  Any	pending	signal
		      of this signal type remains held.	 Only  one  signal  of
		      each type	is held.

		      Note: the	signals	and cannot be held.

       function	address
		      Catch signal.

		      func  must be a pointer to a function, the signal-catch-
		      ing handler, that	is  called  when  signal  sig  occurs.
		      specifies	 that the process calls	this function upon re-
		      ceipt of signal sig.  Any	pending	signal of this type is
		      released.	 This handler address is retained across calls
		      to the other signal management  functions	 listed	 here.
		      Upon  receipt  of	signal sig, the	receiving process exe-
		      cutes the	signal-catching	function pointed to by func as
		      described	 under	signal(5)  with	 the following differ-
		      ences:

		      Before calling the signal-catching handler,  the	system
		      signal  action  of  sig is set to	During a normal	return
		      from the signal-catching handler,	the system signal  ac-
		      tion  is	restored  to  func and any held	signal of this
		      type is released.	 If a non-local	goto (longjmp(3C))  is
		      taken,  must  be called to restore the system signal ac-
		      tion to func and release any held	signal of this type.

       holds the signal	sig.  restores the system signal action	of sig to that
       specified  previously  by and are used to establish critical regions of
       code.  is analogous to raising the  priority  level  and	 deferring  or
       holding a signal	until the priority is lowered by

       sets the	action for signal sig to (see signal(5)).

       suspends	the calling process until it receives an unblocked signal.  If
       the signal sig is held, it is released before the process  pauses.   is
       useful  for  testing  variables	that are changed when a	signal occurs.
       For example, should be used to block the	signal first,  then  test  the
       variables.  If they have	not changed, call to wait for the signal.

RETURN VALUE
       Upon  successful	 completion,  returns the previous value of the	system
       signal action for the specified signal sig.  Otherwise, a value	of  is
       returned	and is set to indicate the error.  is defined in

       For  the	 other functions, a 0 value indicates that the call succeeded.
       A -1 return value indicates an error occurred and is  set  to  indicate
       the reason.

ERRORS
       fails and the system signal action for sig is not changed if any	of the
       following occur:

	      [EFAULT]		  The func argument points to memory  that  is
				  not  a  valid	 part  of  the process address
				  space.  Reliable detection of	this error  is
				  implementation dependent.

       and  fail and the system	signal action for sig is not changed if	any of
       the following occur:

	      [EINVAL]		  sig is not a valid signal number.

	      [EINVAL]		  An attempt is	made to	ignore,	hold, or  sup-
				  ply  a  handler  for a signal	that cannot be
				  ignored, held, or caught; see	signal(5).

       sigpause	returns	when the following occurs:

	      [EINTR]		  A signal was caught.

WARNINGS
       These signal facilities should not be used  in  conjunction  with  bsd-
       proc(3C),  signal(2),  sigvector(2),  sigblock(2),  sigsetmask(2), sig-
       pause(3C) and sigspace(2).

SEE ALSO
       kill(1),	kill(2), signal(2), pause(2), wait(2), abort(3C),  setjmp(3C),
       signal(5).

STANDARDS CONFORMANCE
								    sigset(3C)

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | ERRORS | WARNINGS | SEE ALSO | STANDARDS CONFORMANCE

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=sigset&sektion=3c&manpath=HP-UX+11.22>

home | help