Versions Compared

Key

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

...

Tool

Version

Checker

Description

Axivion Bauhaus Suite

Include Page
Axivion Bauhaus Suite_V
Axivion Bauhaus Suite_V

CertC-FIO47Fully implemented
CodeSonar
Include Page
CodeSonar_V
CodeSonar_V

IO.INJ.FMT
MISC.FMT

Format string injection
Format string

Coverity
Include Page
Coverity_V
Coverity_V
PWReports when the number of arguments differs from the number of required arguments according to the format string
GCC
Include Page
GCC_V
GCC_V


Can detect violations of this recommendation when the -Wformat flag is used

Klocwork
Include Page
Klocwork_V
Klocwork_V

SV.FMT_STR.PRINT_FORMAT_MISMATCH.BAD
SV.FMT_STR.PRINT_FORMAT_MISMATCH.UNDESIRED
SV.FMT_STR.PRINT_IMPROP_LENGTH
SV.FMT_STR.PRINT_PARAMS_WRONGNUM.FEW

SV.FMT_STR.PRINT_PARAMS_WRONGNUM.MANY
SV.FMT_STR.SCAN_FORMAT_MISMATCH.BAD
SV.FMT_STR.SCAN_FORMAT_MISMATCH.UNDESIRED
SV.FMT_STR.SCAN_IMPROP_LENGTH
SV.FMT_STR.SCAN_PARAMS_WRONGNUM.FEW
SV.FMT_STR.SCAN_PARAMS_WRONGNUM.MANY
SV.FMT_STR.UNKWN_FORMAT


LDRA tool suite
Include Page
LDRA_V
LDRA_V

486 S
589 S

Fully implemented

Parasoft C/C++test
Include Page
Parasoft_V
Parasoft_V

CERT_C-FIO47-a
CERT_C-FIO47-b
CERT_C-FIO47-c
CERT_C-FIO47-d
CERT_C-FIO47-e
CERT_C-FIO47-f

There should be no mismatch between the '%s' or '%c' tag from format string and its corresponding argument in 'printf' function invocation
There should be no mismatch between the '%f' tag from format string and its corresponding argument in 'printf' function invocation
There should be no mismatch between the '%i' or '%d' tag from format string and its corresponding argument in 'printf' function invocation
There should be no mismatch between the '%u' tag from format string and its corresponding argument in 'printf' function invocation
There should be no mismatch between the '%p' tag from format string and its corresponding argument in 'printf' function invocation
There should be no difference between the number of tags from format string and the number of corresponding argument in 'printf' function invocation

Polypsace Bug Finder

Include Page
Polyspace Bug Finder_V
Polyspace Bug Finder_V

Format string specifiers and arguments mismatch

String specifiers do not match corresponding arguments

PRQA QA-C
Include Page
PRQA QA-C_v
PRQA QA-C_v

0161, 0162, 0163, 0164, 0165, 0166, 0167, 0168, 0169,

0170, 0171, 0172, 0173, 0174, 0175, 0176, 0177, 0178, 0179 (U),

0180 (C99), 0184 (U), 0185 (U)
0190 (U), 0191 (U), 0192 (U), 0193 (U), 0194 (U)
0195 (U), 0196 (U), 0197 (U), 0198 (U), 0199 (U)
0200 (U), 0201 (U), 0202 (I),
0204, 0206 (U)

Partially implemented
PVS-Studio

Include Page
PVS-Studio_V
PVS-Studio_V

V510, V576

...