Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Tool

Version

Checker

Description

CodeSonar
Include Page
CodeSonar_V
CodeSonar_V

ALLOC.SIZE.ADDOFLOW
ALLOC.SIZE.IOFLOW
ALLOC.SIZE.MULOFLOW
ALLOC.SIZE.SUBUFLOW
MISC.MEM.SIZE.ADDOFLOW
MISC.MEM.SIZE.BAD
MISC.MEM.SIZE.MULOFLOW
MISC.MEM.SIZE.SUBUFLOW

Addition overflow of allocation size
Integer overflow of allocation size
Multiplication overflow of allocation size
Subtraction underflow of allocation size
Addition overflow of size
Unreasonable size argument
Multiplication overflow of size
Subtraction underflow of size

Compass/ROSE

 

 

Can detect violations of this rule by ensuring that operations are checked for overflow before being performed (Be mindful of exception INT30-EX2 because it excuses many operations from requiring validation, including all the operations that would validate a potentially dangerous operation. For instance, adding two unsigned ints together requires validation involving subtracting one of the numbers from UINT_MAX, which itself requires no validation because it cannot wrap.)

Coverity6.5INTEGER_OVERFLOWImplemented
Klocwork
Include Page
Klocwork_V
Klocwork_V
NUM.OVERFLOW
CWARN.NOEFFECT.OUTOFRANGE
 
LDRA tool suite
Include Page
LDRA_V
LDRA_V
493 S, 494 SPartially implemented
Polyspace Bug FinderR2016aUnsigned integer overflowOverflow from operation between unsigned integers
PRQA QA-C
Include Page
PRQA QA-C_v
PRQA QA-C_v

2910 (C)
2911 (D)
2912 (A)
2913 (S)

Partially implemented

...