[PATCH] D70738: [libFuzzer] Add custom output function

Max Moroz via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Dec 9 08:24:43 PST 2019


Dor1s added a comment.

Here's a concrete example:

1. compile https://cs.chromium.org/chromium/src/testing/libfuzzer/fuzzers/javascript_parser_proto_fuzzer.cc
2. fuzz with the binary produced
3. if a crash happens, execute `LPM_DUMP_NATIVE_INPUT=1 ./binary <crash_input>` to get the input fancy printed

2. and 3. can be both implemented inside `cargo fuzz`, i.e. the user will compile only one binary and execute only one `cargo fuzz` command

> We don't want users to have to deal with this, it's supposed to be a smooth, invisible API

Writing `if getenv()` statement is not harder then writing a new function. Maintaining that solution costs 0 for libFuzzer upstream and any other libFuzzer users.


Repository:
  rCRT Compiler Runtime

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D70738/new/

https://reviews.llvm.org/D70738





More information about the llvm-commits mailing list