SIGNAL(3F) BSD SIGNAL(3F)
NAME
signal - change the action for a signal
SYNOPSIS
integer function signal(signum, proc, flag)
integer signum, flag
external proc
DESCRIPTION
When a process incurs a signal (see signal(3C)) the default action is
usually to clean up and abort. The user may choose to write an
alternative signal handling routine. A call to signal is the way this
alternate action is specified to the system.
signum is the signal number (see signal(3C)). If flag is negative, then
proc must be the name of the user signal handling routine. If flag is
zero or positive, then proc is ignored and the value of flag is passed to
the system as the signal action definition. In particular, this is how
previously saved signal actions can be restored. Two possible values for
flag have specific meanings: 0 means "use the default action" (See NOTES
below), 1 means "ignore this signal".
A positive returned value is the previous action definition. A value
greater than 1 is the address of a routine that was to have been called
on occurrence of the given signal. The returned value can be used in
subsequent calls to signal in order to restore a previous action
definition. A negative returned value is the negation of a system error
code. (See perror(3F))
FILES
/usr/lib/libU77.a
SEE ALSO
signal(3C), kill(3F), kill(1)
NOTES
f77 arranges to trap certain signals when a process is started. The only
way to restore the default f77 action is to save the returned value from
the first call to signal.
If the user signal handler is called, it will be passed the signal number
as an integer argument.