Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fuzz: fuzz connman with non-empty addrman + ASMap #29536

Open
wants to merge 5 commits into
base: master
Choose a base branch
from

Conversation

brunoerg
Copy link
Contributor

@brunoerg brunoerg commented Mar 2, 2024

Motivation

Currently, we fuzz connman with an addrman from NodeContext. However,
fuzzing connman with only empty addrman might not be effective, especially
for functions like GetAddresses and other ones that plays with addrman. Also,
we do not fuzz connman with ASMap, what would be good for functions that need
GetGroup, or even for addrman. Without it, I do not see how effective would be
fuzzing ASMapHealthCheck, for example.

Changes

  • Move AddrManDeterministic and ConsumeNetGroupManager to util.
  • Use ConsumeNetGroupManager in connman target to construct a netgroupmanager
    and use it for ConnmanTestMsg.
  • Use AddrManDeterministic in connman target to create an addrman. It does
    not slow down as "filling" the addrman (e.g. with FillAddrman).
  • Add coverage for ASMapHealthCheck.

@DrahtBot
Copy link
Contributor

DrahtBot commented Mar 2, 2024

The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

Code Coverage

For detailed information about the code coverage, see the test coverage report.

Reviews

See the guideline for information on the review process.
A summary of reviews will appear here.

Conflicts

Reviewers, this pull request conflicts with the following ones:

  • #28584 (Fuzz: extend CConnman tests by vasild)

If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants