Amiga Unix — 68040 · 68060

Manual pages › C library (3C)

ssignal(3C)

software signals

From the original Amiga UNIX 2.1 manual. Some things it mentions may not be in this release.

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(2). This facility is made available to users for their own purposes.

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). 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, then 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(2), sigset(2), raise(3C).