The scripting setup for fuzzing is used by google/oss-fuzz which performs continuous fuzzing for the Linkerd project.
The fuzzing configuration for Linkerd is located in the linkerd2 project directory which handles the docker build and execution of the fuzzers.
Instructions for running the fuzzers locally can be found in the oss-fuzz docs.
This will require cloning the google/oss-fuzz repository locally and running the commands outlined in the instructions.
- Dockerfile provides the necessary environment for running the
fuzzer; the main thing being the
oss-fuzz-baseimage which provides thecompile_go_fuzzerfuntions seen in this directory'sbuild.sh. - build.sh is responsible for calling the fuzzing functions for each fuzzer in the linkerd2 project.