Skip to content

feat(cpp): add CppCheck and CppSymbol engine types#402

Open
Divyateja2709 wants to merge 7 commits into
cbomkit:mainfrom
Divyateja2709:pr3
Open

feat(cpp): add CppCheck and CppSymbol engine types#402
Divyateja2709 wants to merge 7 commits into
cbomkit:mainfrom
Divyateja2709:pr3

Conversation

@Divyateja2709
Copy link
Copy Markdown

hi @n1ckl0sk0rtge

This PR adds the first C/C++ language-specific engine types required for upcoming C/C++ support in the Sonar Cryptography Plugin.

Changes Included

  • Added CppCheck.java as the marker interface for C/C++ detection rules
  • Added CppSymbol.java as a lightweight symbol representation for C/C++ source identifiers
  • Added support for optional statically resolved symbol values

Purpose

The detection engine uses language-specific generic types for each supported language. These classes prepare the C/C++ support layer by introducing:

  • CppCheck for the rule/check generic type
  • CppSymbol for the symbol generic type

Because the planned C/C++ support is parser-based and does not yet include a full semantic model, CppSymbol intentionally keeps symbol handling lightweight.

This prepares future work on:

  • C/C++ AST tree types
  • C/C++ language translation
  • C/C++ detection engine integration
  • OpenSSL API detection rules

Signed-off-by: Divyateja Indrakanti <[email protected]>
Signed-off-by: Divyateja Indrakanti <[email protected]>
Signed-off-by: Divyateja Indrakanti <[email protected]>
Signed-off-by: Divyateja Indrakanti <[email protected]>
Signed-off-by: Divyateja Indrakanti <[email protected]>
Signed-off-by: Divyateja Indrakanti <[email protected]>
Signed-off-by: Divyateja Indrakanti <[email protected]>
@Divyateja2709 Divyateja2709 requested a review from a team as a code owner May 6, 2026 12:16
@san-zrl
Copy link
Copy Markdown
Contributor

san-zrl commented May 20, 2026

Hi @Divyateja2709,

Thank you for your PR and for the time and effort you put into contributing to CBOMkit—we truly appreciate your interest.

You may have noticed that we are already working on adding C/C++ support to sonar-cryptography in PR #377. This approach differs from yours, as it relies on Sonar’s native C/C++ support package rather than ANTLR, similar to how the existing Java module is implemented.

Work on PR #377 is already quite advanced, and at this stage we are leaning toward this approach because we expect it to provide stronger support for cross-file symbol tracing through the Sonar infrastructure.

That said, we will keep your PR open for now until a final decision is made.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants