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

Implement fuzzing tests for binprot decoding #6

Open
Tracked by #9 ...
akoptelov opened this issue Aug 19, 2022 · 2 comments
Open
Tracked by #9 ...

Implement fuzzing tests for binprot decoding #6

akoptelov opened this issue Aug 19, 2022 · 2 comments

Comments

@akoptelov
Copy link
Contributor

akoptelov commented Aug 19, 2022

Decoding fuzzing is the first priority since this is primarily what Mina does when receiving bytes from the network.

@akoptelov akoptelov changed the title Fuzz tests Implement fuzzing tests for binprot decoding Aug 19, 2022
akoptelov added a commit that referenced this issue Aug 19, 2022
@akoptelov
Copy link
Contributor Author

@dkuehr I'm using fuzzcheck for fuzzing decoding. What should I do to get a report like you did previously?

@dkuehr
Copy link

dkuehr commented Aug 19, 2022

@akoptelov fuzzcheck-rs generates coverage information in JSON format,same author wrote a tool to generate reports but I never was able to make it work so instead I wrote my own set of Python scripts to produce reports with a kcov-like template to keep the report's layout consistent with our previous tools (https://github.com/tezedge/action_fuzzer_ci/blob/main/report.py).

Now that we have the chance, I recommend to generate coverage reports in a different way. For example we can know how many times each part of code was hit, but in the past we had to discard that information to keep it consistent with kcov reports which can only detect 1-hit. That information can be useful for generating flame-graphs etc..

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

No branches or pull requests

2 participants