Standard C Library Functions bsd_signal(3C)
NAME
bsd_signal - simplified signal facilities
SYNOPSIS
#include
void (*bsd_signal(int sig, void (*func)(int)))(int);
DESCRIPTION
The bsd_signal() function provides a partially compatible
interface for programs written to historical system inter-
faces (see USAGE below).
The function call bsd_signal(sig, func) has an effect as if
implemented as:void (*bsd_signal(int sig, void (*func)(int)))(int)
{ struct sigaction act, oact;act.sa_handler = func;
act.sa_flags = SA_RESTART;
sigemptyset(&act.sa_mask);
sigaddset(&act.sa_mask, sig);
if (sigaction(sig, &act, &oact) == -1)
return(SIG_ERR);
return(oact.sa_handler);
} The handler function should be declared: void handler(int sig); where sig is the signal number. The behavior is undefined if func is a function that takes more than one argument, or an argument of a different type.RETURN VALUES
Upon successful completion, bsd_signal() returns the previ-
ous action for sig. Otherwise, SIG_ERR is returned and errno
is set to indicate the error.ERRORS
Refer to sigaction(2).SunOS 5.11 Last change: 24 Jul 2002 1
Standard C Library Functions bsd_signal(3C)
USAGE
This function is a direct replacement for the BSD signal() function for simple applications that are installing asingle-argument signal handler function. If a BSD signal
handler function is being installed that expects more than one argument, the application has to be modified to usesigaction(2). The bsd_signal() function differs from sig-
nal() in that the SA_RESTART flag is set and the
SA_RESETHAND will be clear when bsd_signal() is used. The
state of these flags is not specified for signal().ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| Interface Stability | Committed ||_____________________________|_____________________________|
| Standard | See standards(5). ||_____________________________|_____________________________|
SEE ALSO
sigaction(2), sigaddset(3C), sigemptyset(3C), attributes(5), standards(5)SunOS 5.11 Last change: 24 Jul 2002 2