diff --git a/projects/hcl/Dockerfile b/projects/hcl/Dockerfile index a5779d306..aaa8236aa 100644 --- a/projects/hcl/Dockerfile +++ b/projects/hcl/Dockerfile @@ -14,7 +14,7 @@ # ################################################################################ -FROM gcr.io/oss-fuzz-base/base-builder-go-codeintelligencetesting +FROM gcr.io/oss-fuzz-base/base-builder-go RUN git clone --depth 1 https://github.com/hashicorp/hcl COPY build.sh $SRC -WORKDIR $SRC/hcl \ No newline at end of file +WORKDIR $SRC/hcl diff --git a/projects/hcl/build.sh b/projects/hcl/build.sh index 986e1009f..79dae3461 100644 --- a/projects/hcl/build.sh +++ b/projects/hcl/build.sh @@ -15,22 +15,19 @@ # ################################################################################ -FUZZERS_BASE=$SRC/hcl/hclsyntax/fuzz -FUZZERS_PACKAGE=github.com/hashicorp/hcl/v2/hclsyntax/fuzz -FUZZER_CLASS=Fuzz +FUZZERS_PACKAGE=github.com/hashicorp/hcl/v2 +go get github.com/AdamKorcz/go-118-fuzz-build/testing -for THE_FUZZER in config expr template traversal -do - THE_FUZZER_NAME="fuzz_"$THE_FUZZER - compile_go_fuzzer $FUZZERS_PACKAGE/$THE_FUZZER $FUZZER_CLASS $THE_FUZZER_NAME +compile_native_go_fuzzer $FUZZERS_PACKAGE/hclsyntax/fuzz FuzzParseTemplate FuzzParseTemplate +compile_native_go_fuzzer $FUZZERS_PACKAGE/hclsyntax/fuzz FuzzParseTraversalAbs FuzzParseTraversalAbs +compile_native_go_fuzzer $FUZZERS_PACKAGE/hclsyntax/fuzz FuzzParseExpression FuzzParseExpression +compile_native_go_fuzzer $FUZZERS_PACKAGE/hclsyntax/fuzz FuzzParseConfig FuzzHclSyntaxParseConfig +compile_native_go_fuzzer $FUZZERS_PACKAGE/json/fuzz FuzzParse FuzzParse +compile_native_go_fuzzer $FUZZERS_PACKAGE/hclwrite/fuzz FuzzParseConfig FuzzHclWriteParseConfig - OUTDIR=$OUT/$THE_FUZZER_NAME"_seed_corpus" - mkdir $OUTDIR - find $FUZZERS_BASE/$THE_FUZZER/corpus -type f | while read FNAME - do - SHASUM_NAME=$(shasum "$FNAME" | awk '{print $1}') - cp "$FNAME" $OUTDIR - done - zip -r $OUTDIR".zip" $OUTDIR - rm -rf $OUTDIR -done \ No newline at end of file +zip $OUT/FuzzParseTemplate_seed_corpus.zip $SRC/hcl/hclsyntax/fuzz/testdata/fuzz/FuzzParseTemplate/* +zip $OUT/FuzzParseTraversalAbs_seed_corpus.zip $SRC/hcl/hclsyntax/fuzz/testdata/fuzz/FuzzParseTraversalAbs/* +zip $OUT/FuzzParseTemplate_seed_corpus.zip $SRC/hcl/hclsyntax/fuzz/testdata/fuzz/FuzzParseTemplate/* +zip $OUT/FuzzParseExpression_seed_corpus.zip $SRC/hcl/hclsyntax/fuzz/testdata/fuzz/FuzzParseExpression/* +zip $OUT/FuzzParse_seed_corpus.zip $SRC/hcl/json/fuzz/testdata/fuzz/FuzzParse/* +zip $OUT/FuzzHclWriteParseConfig_seed_corpus.zip $SRC/hcl/hclsyntax/fuzz/testdata/fuzz/FuzzParseConfig/*