Versions Compared

Key

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

...

Mismatched language linkage specifications generally do not create exploitable security vulnerabilities between the C and C++ language linkages. However, other language linkages exist where the undefined behavior is more likely to result in abnormal program execution, including exploitable vulnerabilities.

Rule

Severity

Likelihood

Remediation Cost

Priority

Level

EXP56-CPP

Low

Unlikely

Medium

P2

L3

Automated Detection

Tool

Version

Checker

Description

Helix QAC

Include Page
Helix QAC_V
Helix QAC_V

C++3033, C++3038


Klocwork
Include Page
Klocwork_V
Klocwork_V
PORTING.CAST.PTR
.FLTPNT

PORTING.CAST.PTR

PORTING
.
CAST.PTR.
FLTPNT
PORTING.CAST.PTR.SIZE
PORTING.CAST.SIZE
MISRA.CAST.PTR.UNRELATED
MISRA.CAST.PTR_TO_INT
 

Parasoft C/C++test

Include Page
Parasoft_V
Parasoft_V

CERT_CPP-EXP56-a

Do not call a function with a mismatched language linkage
Polyspace Bug Finder

Include Page
Polyspace Bug Finder_V
Polyspace Bug Finder_V

CERT C++: EXP56-CPP

Checks for language linkage mismatch between called function type and function definition (rule fully covered)

Related Vulnerabilities

Search for vulnerabilities resulting from the violation of this rule on the CERT website.

Bibliography

[ISO/IEC 14882-2014]Subclause 5.2.2, "Function Call"
Subclause 7.5, "Linkage Specifications"
 
 


...

 Image Modified