 |
Index for Section 2 |
|
 |
Alphabetical listing for S |
|
 |
Bottom of page |
|
signal(2)
NAME
signal - Modifies signal functions
SYNOPSIS
#include <signal.h>
void (*signal(
int sig,
void (*function)(int)) (int) );
STANDARDS
Interfaces documented on this reference page conform to industry standards
as follows:
signal(): XPG4, XPG4-UNIX
Refer to the standards(5) reference page for more information about
industry standards and associated tags.
PARAMETERS
sig Defines the signal. All signals are valid with the exception of
SIGKILL and SIGSTOP.
function
Specifies the address of a signal handler.
DESCRIPTION
The signal function provides compatibility for older versions of the
operating system whose function is a subset of the sigaction function. The
signal function sets the action associated with a signal. The function
parameter uses the values SIG_DFL, SIG_IGN, or it can point to an address
of a signal handler.
A SIG_DFL value specifies the default action that is to be taken when the
signal is delivered. A value of SIG_IGN specifies that the signal has no
effect on the receiving process. A pointer to a function requests that the
signal be caught; that is, the signal should cause the function to be
called. These actions are more fully described in the <signal.h> file.
NOTES
The sigaction() function provides a more comprehensive and reliable
mechanism for controlling signals and is recommended instead of signal()
for new applications.
[Tru64 UNIX] The effect of calling the signal function behavior differs
depending on whether the calling program is linked with either of the
special libraries, libbsd or libsys5, which supply BSD or System V
signaling characteristics respectively. If neither library is used, the
behavior is the same as that of the sigaction function with all the flags
set to 0 (zero). If the libsys5 library is used (through compilation with
the -lsys5 switch), then the specified signal is not blocked from delivery
when the handler is entered, and the disposition of the signal reverts to
SIG_DFL when the signal is delivered. If the libbsd library or the
bsd_signal() function is used, the behavior is the same as that of the
sigaction() function with the SA_RESTART flag set.
[Tru64 UNIX] When compiled in the X/Open UNIX environment, calls to the
signal() function are internally renamed by prepending _E to the function
name. When you are debugging a module that includes the libc version of
the signal() function and for which _XOPEN_SOURCE_EXTENDED has been
defined, use _Esignal to refer to the signal() call. See standards(5) for
information on when the _XOPEN_SOURCE_EXTENDED macro is defined.
RETURN VALUES
Upon successful completion of the signal function, the value of the
previous signal action is returned. Otherwise, SIG_ERR is returned and
errno is set to indicate the error.
ERRORS
The signal() function sets errno to the specified values for the following
conditions:
[EINVAL]
The sig parameter is not a valid signal number or an attempt was made
to catch a signal that cannot be caught or to ignore a signal that
cannot be ignored.
SEE ALSO
Commands: kill(1)
Functions: acct(2), bsd_signal(2), exit(2), kill(2), pause(3), ptrace(2),
setjmp(3), sigaction(2), sigblock(2), sigpause(3), sigprocmask(2),
sigstack(2), sigsuspend(2), sigvec(2), umask(2), wait(2)
Files: signal(4)
Standards: standards(5)
 |
Index for Section 2 |
|
 |
Alphabetical listing for S |
|
 |
Top of page |
|