This page is automatically generated from the "Automated Detection" sections in the individual guidelines. Do not modify this page directly.
Version number: V. 9.1
C checkers
Guideline
ABR
ARR33-C. Guarantee that copies are made into storage of sufficient size
ABV.ITERATOR
ARR30-C. Do not form or use out of bounds pointers or array subscripts
ASSIGCOND.BOOL
MSC02-C. Avoid errors of omission
ASSIGCOND.CALL
EXP18-C. Do not perform assignments in selection statements
ASSIGCOND.GEN
EFFECT
EXP16-C. Do not compare function pointers to constant values
MSC12-C. Detect and remove code that has no effect
FNH.MIGHT
MEM34-C. Only free memory allocated dynamically
FNH.MUST
FUM.GEN.MIGHT
FUM.GEN.MUST
IF_DEF_IN_HEADER_DECL
DCL36-C. Do not declare an identifier with conflicting linkage classifications
IF_DUPL_HEADER
PRE08-C. Guarantee that header file names are unique
IF_MISS_DECL
DCL31-C. Declare identifiers before using them
IF_MULTI_DECL
DCL01-C. Do not reuse variable names in subscopes
IF_MULTI_DEF
IF_MULTI_KIND
INCORRECT.ALLOC_SIZE
EXP01-C. Do not take the size of a pointer to determine the size of the pointed-to type
LA_UNUSED
MSC01-C. Strive for logical completeness
LOCRET.*
DCL30-C. Declare objects with appropriate storage durations
LV_UNUSED.GEN
MSC07-C. Detect and remove dead code
MLK
MEM31-C. Free dynamically allocated memory exactly once
MSC13-C. Detect and remove unused values
NNTS
STR03-C. Do not inadvertently truncate a null-terminated byte string
STR32-C. Null-terminate byte strings as required
NNTS.TAINTED
STR02-C. Sanitize data passed to complex subsystems
STR35-C. Do not copy data from an unbounded source to a fixed-length array
NPD.* RNPD.
EXP34-C. Do not dereference null pointers
PRECISION.LOSS
INT31-C. Ensure that integer conversions do not result in lost or misinterpreted data
RETVOID.IMPLICIT
RH.LEAK
FIO42-C. Ensure files are properly closed when they are no longer needed
SEMICOL
EXP15-C. Do not place a semicolon on the same line as an if, for, or while statement
STR31-C. Guarantee that storage for strings has sufficient space for character data and the null terminator
SV.CODE_INJECTION.SHELL_EXEC
ENV04-C. Do not call system() if you do not need a command processor
SV.CUDS.MISSING_ABSOLUTE_PATH
FIO02-C. Canonicalize path names originating from untrusted sources
SV.FIU.PERMISSIONS
POS36-C. Observe correct revocation order while relinquishing privileges
POS37-C. Ensure that privilege relinquishment is successful
SV.FMT_STR.BAD_SCAN_FORMAT
STR33-C. Size wide character strings correctly
SV.FMT_STR
FIO00-C. Take care when creating format strings
SV.FMTSTR.GENERIC
FIO30-C. Exclude user input from format strings
SV.RVT.RETVAL_NOTTESTED
EXP12-C. Do not ignore values returned by functions
SV.STRBO.GETS
SV.TAINTED.FMTSTR
SV.TAINTED.INJECTION
SV.TAINTED.LOOP_BOUND
SV.TOCTOU.FILE_ACCESS
FIO01-C. Be careful using functions that use file names for identification
SV.USAGERULES.PERMISSIONS
SV.USAGERULES.PROCESS_VARIANTS
POS33-C. Do not use vfork()
SV.USAGERULES.UNBOUNDED_STRING_COPY
SV.USAGERULES.UNINTENDED_COPY
MEM03-C. Clear sensitive information stored in reusable resources
UFM.DEREF.MIGHT
MEM30-C. Do not access freed memory
UFM.DEREF.MUST
UFM.FFM
UFM.RETURN.MIGHT
UFM.RETURN.MUST
UFM.USE.MIGHT
UFM.USE.MUST
UNINIT.HEAP.MIGHT
EXP33-C. Do not reference uninitialized memory
UNINIT.HEAP.MUST
UNINIT.STACK.ARRAY.MIGHT
UNINIT.STACK.ARRAY.MUST
UNINIT.STACK.ARRAY.PARTIAL.MUST
UNINIT.STACK.MUST
UNREACH.*
VA_UNUSED.*