add ssa_afl_fuzzer, export SSA parser and interpreter#8640
Draft
michaeljklein wants to merge 19 commits intomasterfrom
Draft
add ssa_afl_fuzzer, export SSA parser and interpreter#8640michaeljklein wants to merge 19 commits intomasterfrom
michaeljklein wants to merge 19 commits intomasterfrom
Conversation
…llect_outputs' script, 'collect_unique_crashes' script, 'keep_inputs_upto_1kb', script for unique locations
… input files for fuzzing next pass, replace all blocking-panic locations during input validation (before the target pass) with successful exits, fix hang and clear previous outputs in collect_unique_crashes.rb, fuzzing 'inline_functions_with_at_most_one_instruction', use uninitalized parameters for all fuzzing-input parameters, add fuzzing readme, add some fuzzing results
…to 2kb, make_combined_inputs.rb, add final results from fuzz's
…missing fn, add results, update readme, fix borrow error from cloning parameters
5 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Problem*
It's hard to write a valid-input-AST generator while also generating counterintuitive SSA programs.
Summary*
#8407 is focused on modifying the existing
ssa_fuzzerwhile this PR is focused on a newafl.rsfuzzer using the SSA interpreter.afl.rs-detected crashes:std::process::exit(0)to filter invalid-input errorsstackercrate to filter out stack overflow errorsdefunctionalizeSSA pass using this fuzzer: chore(test): add panicking tests for 'defunctionalize' #8510Additional Context
sn/ssa_fuzzer_branching, which was WIP when I started, to get the latest support for CFG-related instructionsafl_ssa_fuzzer_branchingafl.rsdocsstd::process::exit(0)'s should only be enabled when a fuzzing-specificcfgfeature is enabledDocumentation*
Check one:
PR Checklist*
cargo fmton default settings.