SSIGNAL(3C) Standard C Library Functions SSIGNAL(3C)

NAME


ssignal, gsignal - software signals

SYNOPSIS


#include <signal.h>

void(*ssignal (int sig, int (*action)(int)))(int);


int gsignal(int sig);


DESCRIPTION


The ssignal() and gsignal() functions implement a software facility
similar to signal(3C). This facility is made available to users for
their own purposes.

ssignal()
Software signals made available to users are associated with integers
in the inclusive range 1 through 17. A call to ssignal() associates a
procedure, action, with the software signal sig; the software signal,
sig, is raised by a call to gsignal(). Raising a software signal
causes the action established for that signal to be taken.


The first argument to ssignal() is a number identifying the type of
signal for which an action is to be established. The second argument
defines the action; it is either the name of a (user-defined) action
function or one of the manifest constants SIG_DFL (default) or
SIG_IGN (ignore). The ssignal() function returns the action
previously established for that signal type; if no action has been
established or the signal number is illegal, ssignal() returns
SIG_DFL.

gsignal()
The gsignal() raises the signal identified by its argument, sig.


If an action function has been established for sig, then that action
is reset to SIG_DFL and the action function is entered with argument
sig. The gsignal() function returns the value returned to it by the
action function.


If the action for sig is SIG_IGN, gsignal() returns the value 1 and
takes no other action.


If the action for sig is SIG_DFL, gsignal() returns the value 0 and
takes no other action.


If sig has an illegal value or no action was ever specified for sig,
gsignal() returns the value 0 and takes no other action.

ATTRIBUTES


See attributes(7) for descriptions of the following attributes:


+---------------+-----------------+
|ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+---------------+-----------------+
|MT-Level | Unsafe |
+---------------+-----------------+

SEE ALSO


raise(3C), signal(3C), attributes(7)

December 29, 1996 SSIGNAL(3C)

tribblix@gmail.com :: GitHub :: Privacy