| Content by Label | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
| Info |
|---|
Information for Editors |
Risk Assessment Summary
Rule | Severity | Likelihood | Detectable | Repairable | Priority | Level |
|---|---|---|---|---|---|---|
| SIG30-C | High | Likely | Yes | No | P18 | L1 |
| SIG31-C | High | Likely | Yes | No | P18 | L1 |
| SIG34-C | Low | Unlikely | Yes | No | P2 | L3 |
| SIG35-C | Low | Unlikely | No | No | P1 | L3 |
Related Rules and Recommendations
| Navigation Map | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|
|
...
A signal is an interrupt that is used to notify a process that an event has occurred. That process can then responds to that event accordingly by "handling the signal". ISO/IEC 9899-1999 C provides functions for sending and handling signals within a C program.
Signals can be delivered by events external to a process, or by calling the raise() function, which is specified as:
| Code Block |
|---|
int raise(int sig);
|
Signals are handled by a process by registering a signal handler using the signal() function, which is specified as:
| Code Block |
|---|
void (*signal(int sig, void (*func)(int)))(int);
|
Improper handling of , signals can lead to security vulnerabilities. The following rules and recommendations are designed to reduce the common errors associated with signal handling.