google / google/fuzztest

Compatibility mode broken with oss-fuzz

Open
#1,125 5 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
1.1k
Forks
137
Avg merge
3d 6h
Merged PRs (30d)
22

Description

Two recent commits prevent us from upgrading fuzztest as our dependency for our fuzztest tests built on oss-fuzz as they break the check_build `python3 infra/helper.py check_build --sanitizer address libavif`.

The first one is: https://github.com/google/fuzztest/commit/c217c314d458b7eedaaf9a436a0095d396b93820 . The change in https://github.com/google/fuzztest/blob/a990537097b6fd337436f7662fb39fc91fa01f3f/fuzztest/internal/compatibility_mode.cc#L128 gets it to fail and we have to modify it to `if (data.size() == 0) return;`. I am not sure on whether it makes sense though.

The second one is https://github.com/google/fuzztest/commit/0c80b315a00a944b6c2a0284f84f956e577697b8 but it is not because of the bumped dependencies, it is because of `set(GTEST_HAS_ABSL ON)` which forces gtest to use absl flags and apparently has a different parsing. Before that, we could send flags to libfuzzer (deprecated but used on oss-fuzz) the following way: `./test --fuzz=MyTest -- -seed=0 -timeout=10` (here https://github.com/AOMediaCodec/libavif/blob/d074bae4b0b1d7423d102f6d9d5e0c5303971a51/tests/oss-fuzz/build.sh#L123) as officially done upstream at https://github.com/google/oss-fuzz/blob/50c8bb586c0835e6fda39e7e933be197750cdf03/infra/base-images/base-builder/compile_fuzztests.sh#L77

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.