Move OSS-Fuzz target file under tests#234
Conversation
Co-authored-by: Alex Grönholm <alex.gronholm@nextday.fi>
agronholm
left a comment
There was a problem hiding this comment.
I don't know how this works, but I assume the fuzzing tests should start working once I re-enable them, yes?
|
Hmm, I will have to dig into this again, it's been a while. Once this PR is merged I can remove this file from the As for CIFuzz, that's not necessary for the OSS-Fuzz "initial" integration, only the next level ("ideal"). So we don't have to worry about that. The difference is that a CIFuzz job will run in your CI pipelines whereas the OSS-Fuzz jobs run in Google's infra somewhere. |
|
Okay, I just tested this out running the oss-fuzz project locally with the following commands:
This now runs the fuzzing harness from this repository instead of the one hardcoded in the OSS-Fuzz repo. This is advantageous because if any APIs change in this repo, then the same changes are more likely to be made to fuzz harnesses also in this repo than ones in a far away file in the OSS-Fuzz repo. So changes are more likely to stay in sync. So once this PR is merged I'll open a PR to the OSS-Fuzz repo that deletes the harness there and references the one here. And the project will continue to be fuzzed by OSS-Fuzz as expected 👍 |
|
Upstream change here: google/oss-fuzz#14749 |
I moved cbor2's fuzzing harness into the project repo: agronholm/cbor2#234 So now OSS-Fuzz can use that instead of this local copy 👍
Hi again!
I'm back working on fuzzing and trying to learn more about OSS-Fuzz. After my initial research into this project, I'm now hoping to promote it to OSS-Fuzz's "initial integration" tier. This requires: "Fuzz targets need to be checked into their upstream repository and integrated into the build system with sanitizer support."
I think this also helps with project developers who'd like to run the fuzz tests, but not necessarily install all the OSS-Fuzz infrastructure.
loads_fuzzer.pycan be run locally with the following commands...First, install the
fuzzdependencies:Next, run the fuzz tests:
This should produce output like the following:
Let me know if you'd like
loads_fuzzer.pyto live in a different location in the repository.