...
Deadlock prevents multiple threads from progressing, halting program execution. A denial-of-service attack is possible if the attacker can create the conditions for deadlock.
Rule | Severity | Likelihood | Detectable | RepairableRemediation Cost | Priority | Level |
|---|---|---|---|---|---|---|
CON35-C | Low | Probable | No | MediumNo | P4P2 | L3 |
Related Vulnerabilities
Search for vulnerabilities resulting from the violation of this rule on the CERT website.
Automated Detection
| Tool | Version | Checker | Description | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Astrée |
| deadlock | Supported by sound analysis (deadlock alarm)Fully checked | |||||||||||||
| CodeSonar |
| CONCURRENCY.LOCK.ORDER | Conflicting lock order | |||||||||||||
| Coverity |
| ORDER_REVERSAL | Fully implemented | |||||||||||||
| Cppcheck Premium |
| premium-cert-con35-c | ||||||||||||||
| Helix QAC |
| C1772, C1773 | ||||||||||||||
| Klocwork |
| CONC.DL | ||||||||||||||
| Parasoft C/C++test |
| BD-TRS-DLOCK | CERT_C-CON35-a | Do not acquire locks in different order | ||||||||||||
| PC-lint Plus |
| 2462 | Fully supported | |||||||||||||
| Polyspace Bug Finder |
| Fully implemented
| R2016a | Deadlock | Call sequence to lock functions cause two tasks to block each other
| CERT C: Rule CON35-C | Checks for deadlock (rule partially covered) |
Related Guidelines
Key here (explains table format and definitions)
...