A signal is an interrupt a mechanism for transferring control, that is typically used to notify a process that an event has occurred. That process can then respond to that event accordingly. C99 provides functions for sending and handling signals within a C program.
...
| Code Block |
|---|
void (*signal(int sig, void (*func)(int)))(int); |
There are two kinds of signal: synchronous (as initiated by a call to raise or abort) and asynchronous. Most of the rules and recommendations in this section do not apply toFor signals that are invoked synchronously, as there is no significant difference between signal handlers that are invoked by a call to a library function and signal handlers that are invoked by a call to the handler itself.
Improper handling of signals can lead to security vulnerabilities. The following rules and recommendations are meant to eliminate common errors associated with signal handling.
...