-
Notifications
You must be signed in to change notification settings - Fork 70
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
Continued fuzzing and hardening #705
Comments
Just realized that there are existing test cases in |
Removed the Strictness: #707, #710, #715, #716 The #720 highlights a possible correctness issue with the parsing of leap seconds on every date which should be further investigated. |
The corpus files after minimization in
btp is around 820K, stream is 724K, ccp is 828K in total. Would probably be great to push them into the repo, have the CI run 100_000 runs of each for good measure or |
#693 introduced fuzzing targets to some crates and in the interest of avoiding forever lasting PRs, I didn't fix all of the found issues. Current status at the end of the PR is:
Other crates have not been fuzzed.
One obvious fix which isn't implemented yet is matching theDone in #707.interledger-packet
datetime string against a regex before askingchrono
to parse it incrates/interledger-packet/src/packet.rs
. This fix would be similar to what was done for the variable length btp timestamp in e6f21c9.#[ignore]
'd test cases:interledger_packet::packet::fuzzed::fuzzed_0_trailing_bytes
(see Continued fuzzing and hardening #705 (comment))interledger_stream::packet::fuzzed
two casesMarking this as good-first-issue as with any hand-written parsing code, there are most likely issues still to be discovered even after fixing the
#[ignore]
test cases. Mentoring is available by pinging me or anyone who recently contributed to the repository. As there are many things to do, it might be best to avoid huge PRs like I ended up doing and tackling one issue at a time.The text was updated successfully, but these errors were encountered: