Recommendations
EXP00-A. Use parentheses for precedence of operation
EXP01-A. Do not take the sizeof a pointer to determine the size of a type
EXP02-A. The second operands of the logical AND and OR operators should not contain side effects
EXP03-A. Do not assume the size of a structure is the sum of the of the sizes of its members
EXP04-A. Do not perform byte-by-byte comparisons between structures
EXP05-A. Do not cast away a const qualification
EXP06-A. Operands to the sizeof operator should not contain side effects
EXP08-A. Ensure pointer arithmetic is used correctly
EXP09-A. Use sizeof to determine the size of a type or variable
EXP10-A. Do not diminish the benefits of constants by assuming their values in expressions
Rules
EXP30-C. Do not depend on order of evaluation between sequence points
EXP31-C. Do not modify constant values
EXP32-C. Do not access a volatile object through a non-volatile reference
EXP33-C. Do not reference uninitialized variables
EXP34-C. Ensure a pointer is valid before dereferencing it
EXP35-C. Do not access or modify the result of a function call after a subsequent sequence point
EXP36-C. Do not convert between pointers to objects with differing alignments
EXP37-C. Call functions with the arguments intended by the API
EXP38-C. Do not call offsetof() on bit-field members or invalid types
Risk Assessment Summary
Recommendation |
Severity |
Likelihood |
Remediation Cost |
Priority |
Level |
|---|---|---|---|---|---|
EXP00-A |
1 (low) |
2 (probable) |
2 (medium) |
P4 |
L3 |
EXP01-A |
3 (high) |
2 (probable) |
2 (medium) |
P12 |
L1 |
EXP02-A |
1 (low) |
1 (unlikely) |
2 (medium) |
P2 |
L3 |
EXP03-A |
2 (medium) |
1 (unlikely) |
1 (high) |
P2 |
L3 |
EXP04-A |
2 (medium) |
1 (unlikely) |
1 (high) |
P2 |
L3 |
EXP05-A |
1 (low) |
2 (probable) |
2 (medium) |
P4 |
L3 |
EXP06-A |
1 (low) |
1 (unlikely) |
3 (low) |
P3 |
L3 |
EXP08-A |
3 (high) |
2 (probable) |
1 (high) |
P6 |
L2 |
EXP09-A |
3 (high) |
1 (unlikely) |
2 (medium) |
P6 |
L2 |
EXP10-A |
1 (low) |
1 (unlikely) |
2 (medium) |
P2 |
L3 |
Rule |
Severity |
Likelihood |
Remediation Cost |
Priority |
Level |
|---|---|---|---|---|---|
EXP30-C |
2 (medium) |
2 (probable) |
2 (medium) |
P8 |
L2 |
EXP31-C |
1 (low) |
1 (unlikely) |
2 (medium) |
P2 |
L3 |
EXP32-C |
1 (low) |
3 (likely) |
2 (medium) |
P6 |
L2 |
EXP33-C |
3 (high) |
1 (unlikely) |
2 (medium) |
P6 |
L2 |
EXP34-C |
3 (high) |
3 (likely) |
2 (medium) |
P18 |
L1 |
EXP35-C |
1 (low) |
1 (unlikely) |
3 (low) |
P3 |
L3 |
EXP36-C |
1 (low) |
2 (probable) |
2 (medium) |
P4 |
L3 |
EXP37-C |
1 (low) |
1 (unlikely) |
3 (low) |
P3 |
L3 |
EXP38-C |
1 (low) |
1 (unlikely) |
2 (medium) |
P2 |
L3 |