...
Two signals in quick succession can trigger a race condition on nonpersistent platforms, causing the signal's default behavior despite a handler's attempt to override it.
Rule | Severity | Likelihood | Remediation Cost | Priority | Level |
|---|---|---|---|---|---|
SIG34-C | Low | Unlikely | Low | P3 | L3 |
Automated Detection
Tool | Version | Checker | Description | ||||
|---|---|---|---|---|---|---|---|
| Astrée |
|
| Supported, but no explicit checker | |||||||||
| CodeSonar |
| BADFUNC.SIGNAL | Use of signal | ||||||
| Compass/ROSE |
| Can detect violations of this rule. However, false positives may occur on systems with persistent handlers | |||||||||
| LDRA tool suite |
| 97 D | Fully implemented | ||||||
| Parasoft C/C++test |
|
|
| MISRA2012-RULE-21_5_b | Use of signal | |||||||
| R2017b | Signal call from within signal handler | Nonpersistent signal handler calling signal() in Windows system causes race condition | |||||||
| PRQA QA-C |
| 5021 | Partially implemented | ||||||
| RuleChecker |
|
| Supported, but no explicit checker |
Related Vulnerabilities
Search for vulnerabilities resulting from the violation of this rule on the CERT website.
...
Key here (explains table format and definitions)
Taxonomy | Taxonomy item | Relationship |
|---|---|---|
| CERT C Secure Coding Standard | SIG01-C. Understand implementation-specific details regarding signal handler persistence | Prior to 2018-01-12: CERT: Unspecified Relationship |
| ISO/IEC TS 17961:2013 | Calling signal from interruptible signal handlers [sigcall] | Prior to 2018-01-12: CERT: Unspecified Relationship |
...
...