aboutsummaryrefslogtreecommitdiff
path: root/infra
diff options
context:
space:
mode:
authorCatena cyber <35799796+catenacyber@users.noreply.github.com>2020-11-20 19:55:33 +0100
committerGitHub <noreply@github.com>2020-11-20 10:55:33 -0800
commitc031d50ec9486c04f9e6fded888f6b7a67e023b2 (patch)
tree2db727733b23fb0d89b8ffd937cb4d8a8b08f367 /infra
parentee7031c4a528b4a24c98ce4e61c04fb3cd90ae1c (diff)
downloadoss-fuzz-c031d50ec9486c04f9e6fded888f6b7a67e023b2.tar.gz
[infra] Golang coverage summary for each fuzz target (#2817, #2714). (#4671)
* Golang coverage summary for each fuzz target * Document usage of compile_go_fuzzer * update the documentation change Co-authored-by: Max Moroz <mmoroz@chromium.org>
Diffstat (limited to 'infra')
-rwxr-xr-xinfra/base-images/base-runner/coverage19
1 files changed, 13 insertions, 6 deletions
diff --git a/infra/base-images/base-runner/coverage b/infra/base-images/base-runner/coverage
index f4f316107..912b85bd7 100755
--- a/infra/base-images/base-runner/coverage
+++ b/infra/base-images/base-runner/coverage
@@ -111,6 +111,18 @@ function run_fuzz_target {
fi
}
+function run_go_fuzz_target {
+ local target=$1
+
+ cd $GOPATH/src
+ echo "Running go target $target"
+ export FUZZ_CORPUS_DIR="/corpus/${target}/"
+ export FUZZ_PROFILE_NAME="$DUMPS_DIR/$target.perf"
+ bash $OUT/$target $DUMPS_DIR/$target.profdata
+ $SYSGOPATH/bin/gocovsum $DUMPS_DIR/$target.profdata > $FUZZER_STATS_DIR/$target.json
+ cd $OUT
+}
+
export SYSGOPATH=$GOPATH
export GOPATH=$OUT/$GOPATH
# Run each fuzz target, generate raw coverage dumps.
@@ -121,12 +133,7 @@ for fuzz_target in $FUZZ_TARGETS; do
if [[ $FUZZING_ENGINE != "none" ]]; then
grep "go test -run" $fuzz_target > /dev/null 2>&1 || continue
fi
- cd $GOPATH/src
- echo "Running go target $fuzz_target"
- export FUZZ_CORPUS_DIR="/corpus/${fuzz_target}/"
- export FUZZ_PROFILE_NAME="$DUMPS_DIR/$fuzz_target.perf"
- bash $OUT/$fuzz_target $DUMPS_DIR/$fuzz_target.profdata &
- cd $OUT
+ run_go_fuzz_target $fuzz_target &
else
# Continue if not a fuzz target.
if [[ $FUZZING_ENGINE != "none" ]]; then