Skip to content

Sanity check harnesses in the coverage reports and/or builds #635

Open
@DavidKorczynski

Description

@DavidKorczynski

In the recent large scale experiment some projects got a wrong benchmark target: #618

We could have discovered this doing some form of sanity check in the source code at some stage.

The sample is e.g. hiredis where the benchmarks has:

...
"target_name": "format_command_fuzzer"
"target_path": "/src/hiredis/format_command_fuzzer.c"
"test_files":
- "test_file_path": "/src/hiredis/examples/example-ssl.c"
...

However, because the harness is moved around in build.sh we ended up flagging two possible harness candidates and overwrote the destination of the copy, meaning our harness would not be in the source code: https://github.com/google/oss-fuzz/blob/bf53d7f396930655fa3db2a9b89b7cab9a543b25/projects/hiredis/build.sh#L19

We can do a couple of things:

  • better harness target detection. We can probably add some heuristics here.
  • sanity check

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions