HP-UX Reference (11i v2 07/12) - 3 Library Functions N-Z (vol 7)

s
ssignal(3C) ssignal(3C)
NAME
ssignal(), gsignal() - software signals
SYNOPSIS
#include <signal.h>
int (*ssignal(int sig, int (*action)(int)))(int);
int gsignal(int sig);
DESCRIPTION
ssignal() and gsignal() implement a software facility similar to signal(5). This facility is used by
the Standard C Library to enable users to indicate the disposition of error conditions, and is also made
available to users for their own purposes.
Software signals made available to users are associated with integers in the inclusive range 1 through 15.
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 func-
tion or one of the manifest constants
SIG_DFL (default) or SIG_IGN (ignore). ssignal() 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() raises the signal identified by its argument, sig:
If an action function has been established for sig, that action is reset to SIG_DFL
and the action
function is entered with argument sig.
gsignal() 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.
SEE ALSO
signal(5), thread_safety(5).
NOTES
Some additional signals with numbers outside the range 1 through 15 are used by the Standard C Library
to indicate error conditions. Those signal numbers outside the range 1 through 15 are legal, although their
use may interfere with the operation of the Standard C Library.
STANDARDS CONFORMANCE
ssignal(): SVID2, SVID3, XPG2
gsignal(): SVID2, SVID3, XPG2
442 Hewlett-Packard Company 1 HP-UX 11i Version 2: December 2007 Update