| 
RAISE_DEFAULT_SIGNAL(3) | 
Library Functions Manual | 
RAISE_DEFAULT_SIGNAL(3) | 
NAME
 raise_default_signal — raise the default signal handler
LIBRARY
 System Utilities Library (libutil, -lutil)
SYNOPSIS
 #include <util.h>
int
raise_default_signal(int sig);
 
DESCRIPTION
 The 
raise_default_signal() function raises the default signal handler for the signal 
sig. This function may be used by a user-defined signal handler router to ensure that a parent process receives the correct notification of a process termination by a signal. This can be used to avoid a common programming mistake when terminating a process from a custom 
SIGINT or 
SIGQUIT signal handler.
The operations performed are:
- 
Block all signals, using sigprocmask(2).
 
- 
Set the signal handler for signal sig to the default signal handler (SIG_DFL).
 
- 
raise(3) signal sig.
 
- 
Unblock signal sig to deliver it.
 
- 
Restore the original signal mask and handler, even if there was a failure.
 
See signal(7) for a table of signals and default actions.
The raise_default_signal() function should be async-signal-safe.
 
RETURN VALUES
 Upon successful completion, a value of 0 is returned. Otherwise, a value of -1 is returned and the global variable errno is set to indicate the error.
HISTORY
 The raise_default_signal() function first appeared in NetBSD 5.0.