-
Notifications
You must be signed in to change notification settings - Fork 2.2k
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
Add Exiv2 #6186
Add Exiv2 #6186
Conversation
Thanks for your pull request. It looks like this may be your first contribution to a Google open source project (if not, look below for help). Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA). 📝 Please visit https://cla.developers.google.com/ to sign. Once you've signed (or fixed any issues), please reply here with What to do if you already signed the CLAIndividual signers
Corporate signers
ℹ️ Googlers: Go here for more info. |
@googlebot I signed it! |
Please could you try running the checks again? I have made some changes and tested locally using these instructions. |
Done. |
I dropped AFL and honggfuzz, so the checks pass now. (I tested it on my own fork.) In the previous commit, I got the AFL build to pass by changing the way that I create the seed corpus, but honggfuzz was still failing with the message "ERROR: 100.0% of fuzz targets seem to be broken". Our fuzz target uses |
OSS-Fuzz passes the right cflags and cxxflags when needing to build afl++ and honggfuzz, can you avoid setting those when run in OSS-Fuzz build environment ? AFL++ coverage is important as it finds its unique set of bugs. |
@inferno-chromium: If I remove the Is there a way to add a |
Ok, apparently the solution is to add I have created a pull request to update our cmake configuration. When that's merged, I'll add another commit to this PR to update |
Right, the main function for AFL/LibFuzzer/HF is linked in via LIB_FUZZING_ENGINE |
This should pass the automated checks now (link to test PR). |
Exiv2 is a command-line utility and C++ library for reading, writing, deleting, and modifying the metadata of image files. It would be great if you could add it to OSS-Fuzz!
I have fixed all the ASAN/UBSAN bugs that I am aware of. However, there are a few results like this, which I consider to be false positives:
/home/kev/exiv2/src/tiffvisitor_int.cpp:778:29: runtime error: null pointer passed as argument 2, which is declared to never be null /usr/include/string.h:44:28: note: nonnull attribute specified here SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior /home/kev/exiv2_0.27/src/tiffvisitor_int.cpp:778:29 in
That error is due to calling
memcpy()
with a null pointer, but the size argument is zero, so I don't think it's a bug. The issue is discussed here on stackoverflow. Will that be a problem on OSS-Fuzz? If so, I will postpone this pull request until I have fixed those issues. (I am planning to do so anyway, but I am keen to get Exiv2 enrolled in OSS-Fuzz as soon as possible.)