1This directory contains source code and build scripts for coverage-guided 2fuzzers. 3 4Detailed instructions are available at: 5 6 https://github.com/google/oss-fuzz/blob/master/docs/ 7 8Quick start: 9 10 Build a container 11 12 $ docker build -t ossfuzz/tpm2 -f fuzz/Dockerfile . 13 14 Build fuzzers 15 16 $ docker run -ti --rm -v $(pwd):/src/tpm2 -v /tmp/fuzzers:/out \ 17 ossfuzz/tpm2 18 19 Look in /tmp/fuzzers to see the executables. Run them like so: 20 21 $ docker run -ti -v $(pwd)/fuzz/corpus-execute-command:/corpus \ 22 -v /tmp/fuzzers:/out ossfuzz/libfuzzer-runner \ 23 /out/tpm2_execute_command_fuzzer /corpus -runs=100 24 25To reproduce a crash under gdb: 26 27 Build a container 28 29 $ docker build -t ossfuzz/tpm2 -f fuzz/Dockerfile . 30 31 Build fuzzers 32 33 $ docker run -ti --rm -v $(pwd):/src/tpm2 -v /tmp/fuzzers:/out \ 34 ossfuzz/tpm2 35 36 Get a shell in the container 37 38 $ docker run -ti --privileged \ 39 -v <crash_testcase>:/testcase \ 40 -v /tmp/fuzzers:/out \ 41 -v $(pwd):/src/tpm2 \ 42 -t ossfuzz/libfuzzer-runner 43 44 In the container 45 46 # gdb /out/tpm2_execute_command_fuzzer 47 48 In gdb 49 50 (gdb) r /testcase 51