summaryrefslogtreecommitdiffstats
path: root/fuzzing
diff options
context:
space:
mode:
authorRobert Löhning <robert.loehning@qt.io>2021-06-17 21:42:05 +0200
committerRobert Löhning <robert.loehning@qt.io>2021-06-21 16:21:41 +0000
commit0f0ebc96a5bb12378d2513be24ce60c69c3177cb (patch)
tree8d9e6e77e908018201684251438e03201192a067 /fuzzing
parentda00236bca0f369309c34ad387dd149ee065a77e (diff)
oss-fuzz: Merge dictionaries of multiple formats
Some functions handle multiple formats, e.g. QTextDocument::setHtml also handles css. With the merged dictionaries, keywords of all formats will be inserted into generated inputs. Change-Id: I81602739b259071e0eb226244dcca6d634302e68 Reviewed-by: Albert Astals Cid <albert.astals.cid@kdab.com>
Diffstat (limited to 'fuzzing')
-rwxr-xr-xfuzzing/oss-fuzz/build.sh9
1 files changed, 7 insertions, 2 deletions
diff --git a/fuzzing/oss-fuzz/build.sh b/fuzzing/oss-fuzz/build.sh
index a5f198fc..3fe01bef 100755
--- a/fuzzing/oss-fuzz/build.sh
+++ b/fuzzing/oss-fuzz/build.sh
@@ -45,6 +45,11 @@ zip -j $WORK/svg $SRC/qtqa/fuzzing/testcases/svg/*
zip -j $WORK/text $SRC/qtqa/fuzzing/testcases/text/* $SRC/afltestcases/others/text/*
zip -j $WORK/xml $SRC/qtqa/fuzzing/testcases/xml/* $SRC/afltestcases/others/xml/*
+# prepare merged dictionaries
+mkdir $WORK/merged_dicts
+cat $SRC/afldictionaries/{css,html_tags}.dict > "$WORK/merged_dicts/css_and_html.dict"
+cat $SRC/afldictionaries/{bmp,exif,gif,jpeg,png,svg,tiff,webp}.dict > "$WORK/merged_dicts/images.dict"
+
# build fuzzers
build_fuzzer() {
@@ -108,9 +113,9 @@ build_fuzzer "qtbase" "corelib/serialization/qxmlstream/qxmlstreamreader/readnex
build_fuzzer "qtbase" "corelib/text/qregularexpression/optimize/optimize.pro" "regexp" "$SRC/afldictionaries/regexp.dict"
build_fuzzer "qtbase" "corelib/time/qdatetime/fromstring/fromstring.pro" "datetime"
build_fuzzer "qtbase" "corelib/tools/qcryptographichash/result/result.pro"
-build_fuzzer "qtbase" "gui/image/qimage/loadfromdata/loadfromdata.pro" "images"
+build_fuzzer "qtbase" "gui/image/qimage/loadfromdata/loadfromdata.pro" "images" "$WORK/merged_dicts/images.dict"
build_fuzzer "qtbase" "gui/painting/qcolorspace/fromiccprofile/fromiccprofile.pro" "icc" "$SRC/afldictionaries/iccprofile.dict"
-build_fuzzer "qtbase" "gui/text/qtextdocument/sethtml/sethtml.pro" "html" "$SRC/afldictionaries/html_tags.dict"
+build_fuzzer "qtbase" "gui/text/qtextdocument/sethtml/sethtml.pro" "html" "$WORK/merged_dicts/css_and_html.dict"
build_fuzzer "qtbase" "gui/text/qtextdocument/setmarkdown/setmarkdown.pro" "markdown" "$SRC/afldictionaries/markdown.dict"
build_fuzzer "qtbase" "gui/text/qtextlayout/beginlayout/beginlayout.pro" "text"
build_fuzzer "qtbase" "network/ssl/qsslcertificate/qsslcertificate/pem/pem.pro" "ssl.pem"