Skip to content
This repository has been archived by the owner on Nov 1, 2023. It is now read-only.

Add fuzzer_target_options to libfuzzer basic template #1610

Merged
merged 7 commits into from
Jan 27, 2022

Conversation

ranweiler
Copy link
Member

@ranweiler ranweiler commented Jan 24, 2022

Add a new fuzzer_target_options argument to the libfuzzer templates to enable setting some libfuzzer arguments only when invoked in fuzzing mode.

Tested the matrix of {target_options = None, [x=y]} x {fuzzer_target_options = None, [x=y]}} by creating jobs with the libfuzzer basic template. Verified that all 4 cases look as expected by querying the created tasks and examining their configs. In particular, the coverage task should always have {input} added to it (because it is not LibFuzzer-aware), and in all cases, the fuzzer_target_options values should be appended to the job-wide target_options for the libfuzzer_fuzz task only, and omitted for all others. The dotnet and qemu_user templates were tested with the same matrix.

Closes #1437.

@ranweiler ranweiler merged commit b49d140 into microsoft:main Jan 27, 2022
@ranweiler ranweiler deleted the libfuzzer-basic-fuzzer-options branch January 27, 2022 04:31
@ghost ghost locked as resolved and limited conversation to collaborators Feb 26, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Detect and distinguish dual-use libfuzzer args for fuzzing
4 participants