Abstract data types are not restricted to object-oriented languages like C++ and Java and should be created and used in C language programs, as well. Abstract data types are most effective when used with private (opaque) data types and information hiding.
...
Wiki Markup |
---|
This noncompliant code example is based on the managed string library developed by CERT \[[Burch 062006|AA. Bibliography#Seacord 06]\]. In this example, the managed string type, and functions that operate on this type, are defined in the {{string_m.h}} header file as follows: |
...
In the external string_m.h
file, the string_mx
type is defined to be an instance of struct string_mx
, which, in turn, is declared as an incomplete type.
...
Recommendation | Severity | Likelihood | Remediation Cost | Priority | Level |
---|---|---|---|---|---|
DCL12-C | low | unlikely | high | P1 | L3 |
Automated Detection
...
Tool | Version | Checker | Description |
---|---|---|---|
|
...
|
|
|
Related Vulnerabilities
Search for vulnerabilities resulting from the violation of this rule on the CERT website.
Bibliography
Wiki Markup |
---|
\[[Burch 062006|AA. Bibliography#Seacord 06]\] \[[ISO/IEC 9899:1999|AA. Bibliography#ISO/IEC 9899-1999]\] Section 6.2.5, "Types" |
...