aboutsummaryrefslogtreecommitdiff
path: root/fuzz
diff options
context:
space:
mode:
authorIvan Nardi <12729895+IvanNardi@users.noreply.github.com>2024-01-24 21:16:58 +0100
committerGitHub <noreply@github.com>2024-01-24 21:16:58 +0100
commitd577508727226d44a713f1af38b08769546edd2a (patch)
treeb04fe77e9665778b1737099c815dd0ebba12777a /fuzz
parent7a83a8dc9122a730a74e5ac644413ae87f94e563 (diff)
fuzz: extend fuzzing coverage (#2281)
Diffstat (limited to 'fuzz')
-rw-r--r--fuzz/Makefile.am29
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/04d093aff831ee1f106282b79281614b8142d91fbin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/080eefec3d658696f6fdaf478e5ac1739c74e87bbin1366 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/090a521b47c35bf722a930e4432aa2d730ee8332bin1032 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/0925b0ebe5718061127a9644b6b7d93980d14e3dbin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/0c4d7507f7afda93d5676b0756e4903fb3dacf60bin3073 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/0cde5ac31a755afdcdbb10c139831665a36dda75bin1026 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/0d001e9c537a1cf7da294ea889f4e2e9ce3c13e0bin2201 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/13ed262cfca6f60fe738ef6cdfa2b56e5dc2d8dabin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/14518d096ece2abb8a2dd7327514f24d6cd48b58bin1074 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/15eb3eb3d65eba1b2a8cb71c2148766114962ac7bin1873 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/1b33c6dae5a35eee9358136515bbe1ee207a3d49bin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/1e7eb80c8e1d8f9b7314b470d92c6be020b97e68bin1027 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/206d5c79d04ccdb3b0d946abbc94d4b637039107bin1059 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/219cdafc24a0ebab673b49203f3cbbd6efde7000bin2095 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/21b1e04ce1c6eb7bdf43328e5c47b15fa44d6f4fbin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/24ccf941ae8c4b95303a148da73d2348619eab9abin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/29afd7f67f6a46c398d71cd9e5ecce787d7f1176bin1027 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/2a286cbf9d32f6de497f91438b0f93c831893d06bin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/2be813450d93a51bd5f047adb730c7929820f643bin1591 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/2c1289ca6c27b79cebb54dc39a55a3fe9fc6bbf9bin1028 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/2c48dce4e16ebb7bbeaa65a5cf0803baa3925a06bin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/2c8502a8cc05c9877c0292567494678a54ee1e38bin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/2cefff96a3039cdbef3c3a6ba41d0b2fe1a24ddebin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/2dbc0e121b164c9ef8cc50247c2fadc3aae9360cbin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/31416f580807982a721aa329e749589b643bde35bin2077 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/31accd2800389b82f8dc68979878c6556982bbb1bin1772 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/3676c7c3052ee8bf7202ab9cdd06f678d8c47266bin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/36b3014210a0794308ae1181d4a8ad08e98f28fdbin1026 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/3ace63222163540c03cd16910add24236483139dbin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/3cd758923493dc4269e956dcd2275cacb70b3d06bin2233 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/40225fbb10ed02053853ce61f3561a1c2eaadd8fbin1355 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/414970dac4e5e56fce119eee76544cf64a14dfe9bin1098 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/41525d340f74f45d774491a3ff3cb09b5c40ae96bin2002 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/4257941232d8d6fd686dc09b71405dfd24aef634bin1759 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/442d5de73c8b73fd39975a5bd03c8d81c9397f2fbin2098 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/47ed8baadac2f946a298d232123e4e84684e9564bin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/49b434649dca7dfd496b4dcaa4367804c526abcebin1027 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/4faa575adf7479a26e898cc388d43bfc56abc3eebin1085 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/50973022d553441dc116887c25f6dc84912ba703bin2110 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/521991a268c2e02c6f7be45c9526cfe88b2e3f7fbin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/530bdb11fe9270a52123f0faeed18c46b5f94fd9bin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/54b73015a7a5041d00f84d67d51832d48c2b9907bin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/599faaa27c2503b734bcd44fd3de9c9adb388bbbbin2193 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/59a871d0625a68595b0e676966b003e5d9bb2cf3bin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/5bbea5577dd3884eae9bb1e1979f2794d591f250bin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/63fd84fdb4c93e5051b131e7283d1edbf2346d97bin1539 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/6420e92ebf6d3056821f7e7dd2e12d0d2dfb716fbin1272 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/68765021cb1305cb14753ce1ffb2e6b0ca98f670bin1027 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/68aa130fbb2ffb67d937d0726e6335332039beb2bin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/6a5d9322d42293dbbed245169604641ddcc6c736bin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/6b9d2fb5531fdf9064209020a9f28487f94b7ad2bin1758 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/6eebb0b657faa02d74cbe782acb06014a09e1681bin1026 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/7218671551e49d714af5c9a0363debc41f69b07fbin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/74cc48645729d7afccc86b88ebdc525ec8e8639ebin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/75bfb98cd2a35dc1af93c58279ea057d45ea09e6bin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/789b485a90d58fdb8817484cd8d0fb125d1ccbebbin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/791eeff6a8158407fcf41885f5114b42576bdc5ebin1710 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/800207865abd6b8e974f7d8ca1165f88fb706da7bin1061 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/80d1a9bbd11a273f303b92ca65e2eca5221274c7bin2180 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/82b0d13945b9d20c7b91ed26645f1e4b0b4e5a67bin2009 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/83a6b52b1116271058025d5d622cf1412dfa5701bin1058 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/83c0a0d3cf3f29cddddeb7c355138ae236bf5727bin1025 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/8b3d2f65163ff2351bf9a5bbf7dfbaeace054246bin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/8b3fa51f3ea12e0ab1f2e4338f0bbdd167995c98bin1123 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/8dc1dd8e66922ff701c798bbe91d19b37f58495fbin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/8e77a1ae0ef5ee0974856f2a0318b46e98f0e4f9bin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/8f2f7f037ede54b9812983536b8a973db7dfe5ecbin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/8f7756178046d60be6bf9eb02d2920c208aa7a7dbin1040 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/921441816405adb82a95beb9e829eb2d07364e39bin1025 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/94cfe0c7f792ee42ff43e5559fe0375323b9b68abin1026 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/95107e7dc7612da1d0905556f401953c06b3507ebin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/9764794fc2c7bcb80ca3f42525e4d4e8e32a088fbin1076 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/99a846729e1fa67dde649843fdf554d3d5c14d1ebin2180 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/9ba1d8c0a69decdd9035db4c60a2aaf66daa9fc1bin1025 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/9c3e465891504c1549a8f2d82dc9416c6f029d00bin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/9cb9002b518cf7158ddd8023b9559f629591cf56bin1038 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/9cc3c1a480c0872bc2f3e8e9539a46951436c1c3bin1043 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/9cd8475553e593641897c96d7abd7463f49c2682bin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/9d598f7fa3cdf08e373f27caf61c012aae75ce4dbin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/9fa60713c5ae1f3726ae70fd4e8c230c27e10a7ebin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/a7302ca6b5de89a8840072d6bc28184881e7e5c7bin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/a7780546d30ae4eb791b6cef858b87dcf915307bbin3825 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/a91405def886e3eccd8ee813609ef32d0b02815bbin1503 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/aa0a7045de571ac72c4bef04373965d3c062a802bin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/acadff503aae63ba452f693f9b1af75beeb871c2bin1031 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/ad11755d5c38e9b4f78b89ea0115891f1e503512bin1104 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/ad56cf4fbb246dbfea16651702230fda3e0c9c83bin2163 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/ae2ee75e6177727ac0387e2c99ae3a761827d68ebin1688 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/b042b35030eb170c6507e14dd6f00a6e1b670612bin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/b41236f1031a78544a0cbed30399f5c63810c858bin1050 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/b688eaaf60534a0470b8a153c71dd52f6acde043bin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/bafbbb41dfbb7cc1be135d34ad282d54d14fb308bin1203 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/bcd8153bc8760c12dccfc81e6fce1cee6dc2c1b4bin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/bff088bb8cea1b5dd229632d70941de8c9415889bin1235 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/c4b1f93b79ffcc468bf487d36c12a53f2e20f5bebin1025 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/c550a457be7c8589680c0d0eb3a36f3e48d96b17bin2178 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/c8d112d02108163b41a166b147a7a44922d7ab49bin1284 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/d0b0b56e3a3b9092ab75b212aa07777c48013050bin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/d35119bcdc064dfd438dd5dc943a7d6e64b118bcbin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/d47ffc046a3a67b46138121d4b0752cb770380aebin2266 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/d5c613293379f84fd9d30da74953c74336b3efc7bin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/d9ea126774547be83e8514cf14bfc46b90e04ae1bin1025 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/e0b35272e42e26f2396fb30f2601afebeec4760bbin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/e0f738b7cc91b246885c5055c7a16ab716053186bin1039 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/e1c65b55e6f0e0f9c878b4127205943903b311c0bin1267 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/e47cab0e163f9522bfd4bc1f3a4f4ef170fe96fdbin2111 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/e77f0ad2aede947e4557ca77181c17cfe628e8f9bin1601 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/e9ae65ef89f69cde2b8e5b3e2ce14ac98b2c2289bin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/ea7d1ce3b3df957829182925f48735fd70e28d1cbin1027 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/ef6a236812a8235565a4c606ea2c5a9341e4aa41bin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/f10e4c67ca64bdce1cd394fd829bf0b5aeed7071bin1033 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/f24cf8ce6cf0a9e00e9fcef913843d439792379cbin1223 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/f415309e92385cbd8c7d1c6a9a7505e933cb2acfbin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/f4d7ba52332b71166ca952780db341c5645f04b3bin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/f5f68d29ff553b4e63a3f0bb69e4c940bc46c291bin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/f6fd7dd2bb4542f3d8d253768b6d63777d048afabin1040 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/f9cce96c161f401d73f04ef031404a885eb5da37bin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/fad5cb6b51a97763038b58addeaa2bd725293ac8bin1040 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/fdd08d361bc7e016b6ad2e41d8b167bff2178777bin1024 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/ff72929db2b1fdacd24b1aed103bb307bbac7d7fbin1263 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_ds_patricia/ff82aaaf9375f24492e1bc709bf1518b827fc83dbin1219 -> 0 bytes
-rw-r--r--fuzz/corpus/fuzz_filecfg_category/comment.txt1
-rw-r--r--fuzz/corpus/fuzz_filecfg_category/example.txt1
-rw-r--r--fuzz/fuzz_common_code.c1
-rw-r--r--fuzz/fuzz_config.cpp74
-rw-r--r--fuzz/fuzz_ds_ahocorasick.cpp6
-rw-r--r--fuzz/fuzz_ds_patricia.cpp64
-rw-r--r--fuzz/fuzz_filecfg_category.c27
-rw-r--r--fuzz/ipv4_addresses.txt1
130 files changed, 177 insertions, 27 deletions
diff --git a/fuzz/Makefile.am b/fuzz/Makefile.am
index a0cfc501c..162e02864 100644
--- a/fuzz/Makefile.am
+++ b/fuzz/Makefile.am
@@ -8,7 +8,7 @@ bin_PROGRAMS += fuzz_libinjection fuzz_binaryfusefilter
#Internal crypto
bin_PROGRAMS += fuzz_gcrypt_light fuzz_gcrypt_aes fuzz_gcrypt_gcm fuzz_gcrypt_cipher
#Configuration files
-bin_PROGRAMS += fuzz_filecfg_protocols fuzz_filecfg_categories fuzz_filecfg_malicious_sha1 fuzz_filecfg_malicious_ja3 fuzz_filecfg_risk_domains fuzz_filecfg_config
+bin_PROGRAMS += fuzz_filecfg_protocols fuzz_filecfg_categories fuzz_filecfg_malicious_sha1 fuzz_filecfg_malicious_ja3 fuzz_filecfg_risk_domains fuzz_filecfg_config fuzz_filecfg_category
#Reader utils
bin_PROGRAMS += fuzz_readerutils_workflow fuzz_readerutils_parseprotolist
@@ -576,6 +576,19 @@ fuzz_filecfg_config_LINK=$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
$(LIBTOOLFLAGS) --mode=link $(CXX) @NDPI_CFLAGS@ $(AM_CXXFLAGS) $(CXXFLAGS) \
$(fuzz_filecfg_config_LDFLAGS) @NDPI_LDFLAGS@ $(LDFLAGS) -o $@
+fuzz_filecfg_category_SOURCES = fuzz_filecfg_category.c fuzz_common_code.c
+fuzz_filecfg_category_CFLAGS = -I../src/lib/ @NDPI_CFLAGS@ $(CXXFLAGS) -DNDPI_LIB_COMPILATION
+fuzz_filecfg_category_LDADD = ../src/lib/libndpi.a $(ADDITIONAL_LIBS)
+fuzz_filecfg_category_LDFLAGS = $(LIBS)
+if HAS_FUZZLDFLAGS
+fuzz_filecfg_category_CFLAGS += $(LIB_FUZZING_ENGINE)
+fuzz_filecfg_category_LDFLAGS += $(LIB_FUZZING_ENGINE)
+endif
+# force usage of CXX for linker
+fuzz_filecfg_category_LINK=$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(CXX) @NDPI_CFLAGS@ $(AM_CXXFLAGS) $(CXXFLAGS) \
+ $(fuzz_filecfg_category_LDFLAGS) @NDPI_LDFLAGS@ $(LDFLAGS) -o $@
+
fuzz_readerutils_workflow_SOURCES = fuzz_readerutils_workflow.cpp fuzz_common_code.c ../example/reader_util.c
fuzz_readerutils_workflow_CXXFLAGS = -I../example/ @NDPI_CFLAGS@ $(CXXFLAGS)
fuzz_readerutils_workflow_CFLAGS = @NDPI_CFLAGS@ $(CXXFLAGS)
@@ -640,10 +653,6 @@ files_corpus_fuzz_is_stun_tcp := $(wildcard corpus/fuzz_is_stun_tcp/*)
fuzz_is_stun_tcp_seed_corpus.zip: $(files_corpus_fuzz_is_stun_tcp)
zip -j fuzz_is_stun_tcp_seed_corpus.zip $(files_corpus_fuzz_is_stun_tcp)
-files_corpus_fuzz_ds_patricia := $(wildcard corpus/fuzz_ds_patricia/*)
-fuzz_ds_patricia_seed_corpus.zip: $(files_corpus_fuzz_ds_patricia)
- zip -j fuzz_ds_patricia_seed_corpus.zip $(files_corpus_fuzz_ds_patricia)
-
files_corpus_fuzz_alg_ses_des := $(wildcard corpus/fuzz_alg_ses_des/*)
fuzz_alg_ses_des_seed_corpus.zip: $(files_corpus_fuzz_alg_ses_des)
zip -j fuzz_alg_ses_des_seed_corpus.zip $(files_corpus_fuzz_alg_ses_des)
@@ -712,6 +721,10 @@ files_corpus_fuzz_filecfg_config := $(wildcard corpus/fuzz_filecfg_config/*)
fuzz_filecfg_config_seed_corpus.zip: $(files_corpus_fuzz_filecfg_config)
zip -j fuzz_filecfg_config_seed_corpus.zip $(files_corpus_fuzz_filecfg_config)
+files_corpus_fuzz_filecfg_category := $(wildcard corpus/fuzz_filecfg_category/*)
+fuzz_filecfg_category_seed_corpus.zip: $(files_corpus_fuzz_filecfg_category)
+ zip -j fuzz_filecfg_category_seed_corpus.zip $(files_corpus_fuzz_filecfg_category)
+
files_corpus_fuzz_readerutils_workflow := $(wildcard corpus/fuzz_readerutils_workflow/*)
fuzz_readerutils_workflow_seed_corpus.zip: $(files_corpus_fuzz_readerutils_workflow)
zip -j fuzz_readerutils_workflow_seed_corpus.zip $(files_corpus_fuzz_readerutils_workflow)
@@ -728,7 +741,7 @@ files_corpus_fuzz_ds_domain_classify := $(wildcard corpus/fuzz_ds_domain_classi
fuzz_ds_domain_classify_seed_corpus.zip: $(files_corpus_fuzz_ds_domain_classify)
zip -j fuzz_ds_domain_classify_seed_corpus.zip $(files_corpus_fuzz_ds_domain_classify)
-corpus: fuzz_ndpi_reader_seed_corpus.zip fuzz_ndpi_reader_alloc_fail_seed_corpus.zip fuzz_ndpi_reader_payload_analyzer_seed_corpus.zip fuzz_quic_get_crypto_data_seed_corpus.zip fuzz_ds_patricia_seed_corpus.zip fuzz_alg_ses_des_seed_corpus.zip fuzz_alg_bins_seed_corpus.zip fuzz_alg_hll_seed_corpus.zip fuzz_alg_jitter_seed_corpus.zip fuzz_ds_libcache_seed_corpus.zip fuzz_community_id_seed_corpus.zip fuzz_ds_tree_seed_corpus.zip fuzz_serialization_seed_corpus.zip fuzz_ds_ptree_seed_corpus.zip fuzz_alg_crc32_md5_seed_corpus.zip fuzz_alg_bytestream_seed_corpus.zip fuzz_libinjection_seed_corpus.zip fuzz_tls_certificate_seed_corpus.zip fuzz_filecfg_protocols_seed_corpus.zip fuzz_readerutils_workflow_seed_corpus.zip fuzz_readerutils_parseprotolist_seed_corpus.zip fuzz_ds_bitmap64_seed_corpus.zip fuzz_ds_domain_classify_seed_corpus.zip fuzz_filecfg_protocols_seed_corpus.zip fuzz_filecfg_config_seed_corpus.zip fuzz_is_stun_udp_seed_corpus.zip fuzz_is_stun_tcp_seed_corpus.zip fuzz_filecfg_malicious_sha1_seed_corpus.zip fuzz_filecfg_malicious_ja3_seed_corpus.zip fuzz_filecfg_risk_domains_seed_corpus.zip
+corpus: fuzz_ndpi_reader_seed_corpus.zip fuzz_ndpi_reader_alloc_fail_seed_corpus.zip fuzz_ndpi_reader_payload_analyzer_seed_corpus.zip fuzz_quic_get_crypto_data_seed_corpus.zip fuzz_alg_ses_des_seed_corpus.zip fuzz_alg_bins_seed_corpus.zip fuzz_alg_hll_seed_corpus.zip fuzz_alg_jitter_seed_corpus.zip fuzz_ds_libcache_seed_corpus.zip fuzz_community_id_seed_corpus.zip fuzz_ds_tree_seed_corpus.zip fuzz_serialization_seed_corpus.zip fuzz_ds_ptree_seed_corpus.zip fuzz_alg_crc32_md5_seed_corpus.zip fuzz_alg_bytestream_seed_corpus.zip fuzz_libinjection_seed_corpus.zip fuzz_tls_certificate_seed_corpus.zip fuzz_filecfg_protocols_seed_corpus.zip fuzz_readerutils_workflow_seed_corpus.zip fuzz_readerutils_parseprotolist_seed_corpus.zip fuzz_ds_bitmap64_seed_corpus.zip fuzz_ds_domain_classify_seed_corpus.zip fuzz_filecfg_protocols_seed_corpus.zip fuzz_filecfg_categories_seed_corpus.zip fuzz_filecfg_config_seed_corpus.zip fuzz_filecfg_category_seed_corpus.zip fuzz_is_stun_udp_seed_corpus.zip fuzz_is_stun_tcp_seed_corpus.zip fuzz_filecfg_malicious_sha1_seed_corpus.zip fuzz_filecfg_malicious_ja3_seed_corpus.zip fuzz_filecfg_risk_domains_seed_corpus.zip
cp corpus/fuzz_*seed_corpus.zip .
#Create dictionaries exactly as expected by oss-fuzz.
@@ -762,6 +775,7 @@ distdir:
-o -path './corpus/fuzz_filecfg_malicious_ja3/*' \
-o -path './corpus/fuzz_filecfg_risk_domains/*' \
-o -path './corpus/fuzz_filecfg_config/*' \
+ -o -path './corpus/fuzz_filecfg_category/*' \
-o -path './corpus/fuzz_readerutils_workflow/*' \
-o -path './corpus/fuzz_readerutils_parseprotolist/*' \
-o -path './corpus/fuzz_is_stun_udp/*' \
@@ -780,7 +794,6 @@ distdir:
-o -path './corpus/fuzz_ds_tree/*' \
-o -path './corpus/fuzz_ds_bitmap64/*' \
-o -path './corpus/fuzz_ds_domain_classify/*' \
- -o -path './corpus/fuzz_ds_ptree/*' \
- -o -path './corpus/fuzz_ds_patricia/*' | xargs -I'{}' cp -r '{}' '$(distdir)/{}'
+ -o -path './corpus/fuzz_ds_ptree/*' | xargs -I'{}' cp -r '{}' '$(distdir)/{}'
all: corpus dictionaries
diff --git a/fuzz/corpus/fuzz_ds_patricia/04d093aff831ee1f106282b79281614b8142d91f b/fuzz/corpus/fuzz_ds_patricia/04d093aff831ee1f106282b79281614b8142d91f
deleted file mode 100644
index 4dfb06a99..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/04d093aff831ee1f106282b79281614b8142d91f
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/080eefec3d658696f6fdaf478e5ac1739c74e87b b/fuzz/corpus/fuzz_ds_patricia/080eefec3d658696f6fdaf478e5ac1739c74e87b
deleted file mode 100644
index cc89738a4..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/080eefec3d658696f6fdaf478e5ac1739c74e87b
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/090a521b47c35bf722a930e4432aa2d730ee8332 b/fuzz/corpus/fuzz_ds_patricia/090a521b47c35bf722a930e4432aa2d730ee8332
deleted file mode 100644
index 2b98a6029..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/090a521b47c35bf722a930e4432aa2d730ee8332
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/0925b0ebe5718061127a9644b6b7d93980d14e3d b/fuzz/corpus/fuzz_ds_patricia/0925b0ebe5718061127a9644b6b7d93980d14e3d
deleted file mode 100644
index 75b4c3a2a..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/0925b0ebe5718061127a9644b6b7d93980d14e3d
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/0c4d7507f7afda93d5676b0756e4903fb3dacf60 b/fuzz/corpus/fuzz_ds_patricia/0c4d7507f7afda93d5676b0756e4903fb3dacf60
deleted file mode 100644
index d534e347d..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/0c4d7507f7afda93d5676b0756e4903fb3dacf60
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/0cde5ac31a755afdcdbb10c139831665a36dda75 b/fuzz/corpus/fuzz_ds_patricia/0cde5ac31a755afdcdbb10c139831665a36dda75
deleted file mode 100644
index 1d8983877..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/0cde5ac31a755afdcdbb10c139831665a36dda75
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/0d001e9c537a1cf7da294ea889f4e2e9ce3c13e0 b/fuzz/corpus/fuzz_ds_patricia/0d001e9c537a1cf7da294ea889f4e2e9ce3c13e0
deleted file mode 100644
index 6583bb785..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/0d001e9c537a1cf7da294ea889f4e2e9ce3c13e0
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/13ed262cfca6f60fe738ef6cdfa2b56e5dc2d8da b/fuzz/corpus/fuzz_ds_patricia/13ed262cfca6f60fe738ef6cdfa2b56e5dc2d8da
deleted file mode 100644
index 07f49d1ce..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/13ed262cfca6f60fe738ef6cdfa2b56e5dc2d8da
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/14518d096ece2abb8a2dd7327514f24d6cd48b58 b/fuzz/corpus/fuzz_ds_patricia/14518d096ece2abb8a2dd7327514f24d6cd48b58
deleted file mode 100644
index 24b97cccb..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/14518d096ece2abb8a2dd7327514f24d6cd48b58
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/15eb3eb3d65eba1b2a8cb71c2148766114962ac7 b/fuzz/corpus/fuzz_ds_patricia/15eb3eb3d65eba1b2a8cb71c2148766114962ac7
deleted file mode 100644
index c6ef675b6..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/15eb3eb3d65eba1b2a8cb71c2148766114962ac7
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/1b33c6dae5a35eee9358136515bbe1ee207a3d49 b/fuzz/corpus/fuzz_ds_patricia/1b33c6dae5a35eee9358136515bbe1ee207a3d49
deleted file mode 100644
index c6e875044..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/1b33c6dae5a35eee9358136515bbe1ee207a3d49
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/1e7eb80c8e1d8f9b7314b470d92c6be020b97e68 b/fuzz/corpus/fuzz_ds_patricia/1e7eb80c8e1d8f9b7314b470d92c6be020b97e68
deleted file mode 100644
index 46041c9a8..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/1e7eb80c8e1d8f9b7314b470d92c6be020b97e68
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/206d5c79d04ccdb3b0d946abbc94d4b637039107 b/fuzz/corpus/fuzz_ds_patricia/206d5c79d04ccdb3b0d946abbc94d4b637039107
deleted file mode 100644
index 1de64153c..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/206d5c79d04ccdb3b0d946abbc94d4b637039107
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/219cdafc24a0ebab673b49203f3cbbd6efde7000 b/fuzz/corpus/fuzz_ds_patricia/219cdafc24a0ebab673b49203f3cbbd6efde7000
deleted file mode 100644
index fe1c06fb9..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/219cdafc24a0ebab673b49203f3cbbd6efde7000
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/21b1e04ce1c6eb7bdf43328e5c47b15fa44d6f4f b/fuzz/corpus/fuzz_ds_patricia/21b1e04ce1c6eb7bdf43328e5c47b15fa44d6f4f
deleted file mode 100644
index c5db9d0dd..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/21b1e04ce1c6eb7bdf43328e5c47b15fa44d6f4f
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/24ccf941ae8c4b95303a148da73d2348619eab9a b/fuzz/corpus/fuzz_ds_patricia/24ccf941ae8c4b95303a148da73d2348619eab9a
deleted file mode 100644
index 12d51dac6..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/24ccf941ae8c4b95303a148da73d2348619eab9a
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/29afd7f67f6a46c398d71cd9e5ecce787d7f1176 b/fuzz/corpus/fuzz_ds_patricia/29afd7f67f6a46c398d71cd9e5ecce787d7f1176
deleted file mode 100644
index fe6050b3e..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/29afd7f67f6a46c398d71cd9e5ecce787d7f1176
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/2a286cbf9d32f6de497f91438b0f93c831893d06 b/fuzz/corpus/fuzz_ds_patricia/2a286cbf9d32f6de497f91438b0f93c831893d06
deleted file mode 100644
index 1bf7effae..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/2a286cbf9d32f6de497f91438b0f93c831893d06
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/2be813450d93a51bd5f047adb730c7929820f643 b/fuzz/corpus/fuzz_ds_patricia/2be813450d93a51bd5f047adb730c7929820f643
deleted file mode 100644
index 301f0d579..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/2be813450d93a51bd5f047adb730c7929820f643
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/2c1289ca6c27b79cebb54dc39a55a3fe9fc6bbf9 b/fuzz/corpus/fuzz_ds_patricia/2c1289ca6c27b79cebb54dc39a55a3fe9fc6bbf9
deleted file mode 100644
index 0edbf0af5..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/2c1289ca6c27b79cebb54dc39a55a3fe9fc6bbf9
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/2c48dce4e16ebb7bbeaa65a5cf0803baa3925a06 b/fuzz/corpus/fuzz_ds_patricia/2c48dce4e16ebb7bbeaa65a5cf0803baa3925a06
deleted file mode 100644
index b663fb5e7..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/2c48dce4e16ebb7bbeaa65a5cf0803baa3925a06
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/2c8502a8cc05c9877c0292567494678a54ee1e38 b/fuzz/corpus/fuzz_ds_patricia/2c8502a8cc05c9877c0292567494678a54ee1e38
deleted file mode 100644
index 0816e402e..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/2c8502a8cc05c9877c0292567494678a54ee1e38
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/2cefff96a3039cdbef3c3a6ba41d0b2fe1a24dde b/fuzz/corpus/fuzz_ds_patricia/2cefff96a3039cdbef3c3a6ba41d0b2fe1a24dde
deleted file mode 100644
index 986f6b32f..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/2cefff96a3039cdbef3c3a6ba41d0b2fe1a24dde
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/2dbc0e121b164c9ef8cc50247c2fadc3aae9360c b/fuzz/corpus/fuzz_ds_patricia/2dbc0e121b164c9ef8cc50247c2fadc3aae9360c
deleted file mode 100644
index e7991e4e2..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/2dbc0e121b164c9ef8cc50247c2fadc3aae9360c
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/31416f580807982a721aa329e749589b643bde35 b/fuzz/corpus/fuzz_ds_patricia/31416f580807982a721aa329e749589b643bde35
deleted file mode 100644
index b6d28ca14..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/31416f580807982a721aa329e749589b643bde35
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/31accd2800389b82f8dc68979878c6556982bbb1 b/fuzz/corpus/fuzz_ds_patricia/31accd2800389b82f8dc68979878c6556982bbb1
deleted file mode 100644
index ad7862b3b..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/31accd2800389b82f8dc68979878c6556982bbb1
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/3676c7c3052ee8bf7202ab9cdd06f678d8c47266 b/fuzz/corpus/fuzz_ds_patricia/3676c7c3052ee8bf7202ab9cdd06f678d8c47266
deleted file mode 100644
index 7ff41e16d..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/3676c7c3052ee8bf7202ab9cdd06f678d8c47266
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/36b3014210a0794308ae1181d4a8ad08e98f28fd b/fuzz/corpus/fuzz_ds_patricia/36b3014210a0794308ae1181d4a8ad08e98f28fd
deleted file mode 100644
index 311dc779a..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/36b3014210a0794308ae1181d4a8ad08e98f28fd
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/3ace63222163540c03cd16910add24236483139d b/fuzz/corpus/fuzz_ds_patricia/3ace63222163540c03cd16910add24236483139d
deleted file mode 100644
index 6d4021771..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/3ace63222163540c03cd16910add24236483139d
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/3cd758923493dc4269e956dcd2275cacb70b3d06 b/fuzz/corpus/fuzz_ds_patricia/3cd758923493dc4269e956dcd2275cacb70b3d06
deleted file mode 100644
index 34ff5eb1f..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/3cd758923493dc4269e956dcd2275cacb70b3d06
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/40225fbb10ed02053853ce61f3561a1c2eaadd8f b/fuzz/corpus/fuzz_ds_patricia/40225fbb10ed02053853ce61f3561a1c2eaadd8f
deleted file mode 100644
index 45ac04667..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/40225fbb10ed02053853ce61f3561a1c2eaadd8f
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/414970dac4e5e56fce119eee76544cf64a14dfe9 b/fuzz/corpus/fuzz_ds_patricia/414970dac4e5e56fce119eee76544cf64a14dfe9
deleted file mode 100644
index 3a71d9826..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/414970dac4e5e56fce119eee76544cf64a14dfe9
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/41525d340f74f45d774491a3ff3cb09b5c40ae96 b/fuzz/corpus/fuzz_ds_patricia/41525d340f74f45d774491a3ff3cb09b5c40ae96
deleted file mode 100644
index d510e3f26..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/41525d340f74f45d774491a3ff3cb09b5c40ae96
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/4257941232d8d6fd686dc09b71405dfd24aef634 b/fuzz/corpus/fuzz_ds_patricia/4257941232d8d6fd686dc09b71405dfd24aef634
deleted file mode 100644
index 95f8933cf..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/4257941232d8d6fd686dc09b71405dfd24aef634
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/442d5de73c8b73fd39975a5bd03c8d81c9397f2f b/fuzz/corpus/fuzz_ds_patricia/442d5de73c8b73fd39975a5bd03c8d81c9397f2f
deleted file mode 100644
index c39bf4f5a..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/442d5de73c8b73fd39975a5bd03c8d81c9397f2f
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/47ed8baadac2f946a298d232123e4e84684e9564 b/fuzz/corpus/fuzz_ds_patricia/47ed8baadac2f946a298d232123e4e84684e9564
deleted file mode 100644
index f10228edd..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/47ed8baadac2f946a298d232123e4e84684e9564
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/49b434649dca7dfd496b4dcaa4367804c526abce b/fuzz/corpus/fuzz_ds_patricia/49b434649dca7dfd496b4dcaa4367804c526abce
deleted file mode 100644
index 6ee874425..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/49b434649dca7dfd496b4dcaa4367804c526abce
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/4faa575adf7479a26e898cc388d43bfc56abc3ee b/fuzz/corpus/fuzz_ds_patricia/4faa575adf7479a26e898cc388d43bfc56abc3ee
deleted file mode 100644
index cf9dcf951..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/4faa575adf7479a26e898cc388d43bfc56abc3ee
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/50973022d553441dc116887c25f6dc84912ba703 b/fuzz/corpus/fuzz_ds_patricia/50973022d553441dc116887c25f6dc84912ba703
deleted file mode 100644
index acf849745..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/50973022d553441dc116887c25f6dc84912ba703
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/521991a268c2e02c6f7be45c9526cfe88b2e3f7f b/fuzz/corpus/fuzz_ds_patricia/521991a268c2e02c6f7be45c9526cfe88b2e3f7f
deleted file mode 100644
index 95ee0a99b..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/521991a268c2e02c6f7be45c9526cfe88b2e3f7f
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/530bdb11fe9270a52123f0faeed18c46b5f94fd9 b/fuzz/corpus/fuzz_ds_patricia/530bdb11fe9270a52123f0faeed18c46b5f94fd9
deleted file mode 100644
index 72d1cec2d..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/530bdb11fe9270a52123f0faeed18c46b5f94fd9
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/54b73015a7a5041d00f84d67d51832d48c2b9907 b/fuzz/corpus/fuzz_ds_patricia/54b73015a7a5041d00f84d67d51832d48c2b9907
deleted file mode 100644
index 5b2e13204..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/54b73015a7a5041d00f84d67d51832d48c2b9907
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/599faaa27c2503b734bcd44fd3de9c9adb388bbb b/fuzz/corpus/fuzz_ds_patricia/599faaa27c2503b734bcd44fd3de9c9adb388bbb
deleted file mode 100644
index 6670b4a9c..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/599faaa27c2503b734bcd44fd3de9c9adb388bbb
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/59a871d0625a68595b0e676966b003e5d9bb2cf3 b/fuzz/corpus/fuzz_ds_patricia/59a871d0625a68595b0e676966b003e5d9bb2cf3
deleted file mode 100644
index 0d747622e..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/59a871d0625a68595b0e676966b003e5d9bb2cf3
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/5bbea5577dd3884eae9bb1e1979f2794d591f250 b/fuzz/corpus/fuzz_ds_patricia/5bbea5577dd3884eae9bb1e1979f2794d591f250
deleted file mode 100644
index db187d141..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/5bbea5577dd3884eae9bb1e1979f2794d591f250
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/63fd84fdb4c93e5051b131e7283d1edbf2346d97 b/fuzz/corpus/fuzz_ds_patricia/63fd84fdb4c93e5051b131e7283d1edbf2346d97
deleted file mode 100644
index 9aceece25..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/63fd84fdb4c93e5051b131e7283d1edbf2346d97
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/6420e92ebf6d3056821f7e7dd2e12d0d2dfb716f b/fuzz/corpus/fuzz_ds_patricia/6420e92ebf6d3056821f7e7dd2e12d0d2dfb716f
deleted file mode 100644
index 232c7b6cc..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/6420e92ebf6d3056821f7e7dd2e12d0d2dfb716f
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/68765021cb1305cb14753ce1ffb2e6b0ca98f670 b/fuzz/corpus/fuzz_ds_patricia/68765021cb1305cb14753ce1ffb2e6b0ca98f670
deleted file mode 100644
index eac99a324..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/68765021cb1305cb14753ce1ffb2e6b0ca98f670
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/68aa130fbb2ffb67d937d0726e6335332039beb2 b/fuzz/corpus/fuzz_ds_patricia/68aa130fbb2ffb67d937d0726e6335332039beb2
deleted file mode 100644
index c6d7ef4ae..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/68aa130fbb2ffb67d937d0726e6335332039beb2
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/6a5d9322d42293dbbed245169604641ddcc6c736 b/fuzz/corpus/fuzz_ds_patricia/6a5d9322d42293dbbed245169604641ddcc6c736
deleted file mode 100644
index 6e42b2aa9..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/6a5d9322d42293dbbed245169604641ddcc6c736
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/6b9d2fb5531fdf9064209020a9f28487f94b7ad2 b/fuzz/corpus/fuzz_ds_patricia/6b9d2fb5531fdf9064209020a9f28487f94b7ad2
deleted file mode 100644
index e55f2ba72..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/6b9d2fb5531fdf9064209020a9f28487f94b7ad2
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/6eebb0b657faa02d74cbe782acb06014a09e1681 b/fuzz/corpus/fuzz_ds_patricia/6eebb0b657faa02d74cbe782acb06014a09e1681
deleted file mode 100644
index 985c59bfb..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/6eebb0b657faa02d74cbe782acb06014a09e1681
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/7218671551e49d714af5c9a0363debc41f69b07f b/fuzz/corpus/fuzz_ds_patricia/7218671551e49d714af5c9a0363debc41f69b07f
deleted file mode 100644
index ba3469110..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/7218671551e49d714af5c9a0363debc41f69b07f
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/74cc48645729d7afccc86b88ebdc525ec8e8639e b/fuzz/corpus/fuzz_ds_patricia/74cc48645729d7afccc86b88ebdc525ec8e8639e
deleted file mode 100644
index 6c61526ad..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/74cc48645729d7afccc86b88ebdc525ec8e8639e
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/75bfb98cd2a35dc1af93c58279ea057d45ea09e6 b/fuzz/corpus/fuzz_ds_patricia/75bfb98cd2a35dc1af93c58279ea057d45ea09e6
deleted file mode 100644
index 6358e5a9e..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/75bfb98cd2a35dc1af93c58279ea057d45ea09e6
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/789b485a90d58fdb8817484cd8d0fb125d1ccbeb b/fuzz/corpus/fuzz_ds_patricia/789b485a90d58fdb8817484cd8d0fb125d1ccbeb
deleted file mode 100644
index 36d2bd060..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/789b485a90d58fdb8817484cd8d0fb125d1ccbeb
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/791eeff6a8158407fcf41885f5114b42576bdc5e b/fuzz/corpus/fuzz_ds_patricia/791eeff6a8158407fcf41885f5114b42576bdc5e
deleted file mode 100644
index 7b5fd5471..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/791eeff6a8158407fcf41885f5114b42576bdc5e
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/800207865abd6b8e974f7d8ca1165f88fb706da7 b/fuzz/corpus/fuzz_ds_patricia/800207865abd6b8e974f7d8ca1165f88fb706da7
deleted file mode 100644
index 57ab491aa..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/800207865abd6b8e974f7d8ca1165f88fb706da7
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/80d1a9bbd11a273f303b92ca65e2eca5221274c7 b/fuzz/corpus/fuzz_ds_patricia/80d1a9bbd11a273f303b92ca65e2eca5221274c7
deleted file mode 100644
index 58da9a664..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/80d1a9bbd11a273f303b92ca65e2eca5221274c7
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/82b0d13945b9d20c7b91ed26645f1e4b0b4e5a67 b/fuzz/corpus/fuzz_ds_patricia/82b0d13945b9d20c7b91ed26645f1e4b0b4e5a67
deleted file mode 100644
index 46799067e..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/82b0d13945b9d20c7b91ed26645f1e4b0b4e5a67
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/83a6b52b1116271058025d5d622cf1412dfa5701 b/fuzz/corpus/fuzz_ds_patricia/83a6b52b1116271058025d5d622cf1412dfa5701
deleted file mode 100644
index 391b875dd..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/83a6b52b1116271058025d5d622cf1412dfa5701
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/83c0a0d3cf3f29cddddeb7c355138ae236bf5727 b/fuzz/corpus/fuzz_ds_patricia/83c0a0d3cf3f29cddddeb7c355138ae236bf5727
deleted file mode 100644
index b1f89eb8c..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/83c0a0d3cf3f29cddddeb7c355138ae236bf5727
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/8b3d2f65163ff2351bf9a5bbf7dfbaeace054246 b/fuzz/corpus/fuzz_ds_patricia/8b3d2f65163ff2351bf9a5bbf7dfbaeace054246
deleted file mode 100644
index acaab6e6a..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/8b3d2f65163ff2351bf9a5bbf7dfbaeace054246
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/8b3fa51f3ea12e0ab1f2e4338f0bbdd167995c98 b/fuzz/corpus/fuzz_ds_patricia/8b3fa51f3ea12e0ab1f2e4338f0bbdd167995c98
deleted file mode 100644
index a799ddcce..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/8b3fa51f3ea12e0ab1f2e4338f0bbdd167995c98
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/8dc1dd8e66922ff701c798bbe91d19b37f58495f b/fuzz/corpus/fuzz_ds_patricia/8dc1dd8e66922ff701c798bbe91d19b37f58495f
deleted file mode 100644
index 6084afb47..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/8dc1dd8e66922ff701c798bbe91d19b37f58495f
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/8e77a1ae0ef5ee0974856f2a0318b46e98f0e4f9 b/fuzz/corpus/fuzz_ds_patricia/8e77a1ae0ef5ee0974856f2a0318b46e98f0e4f9
deleted file mode 100644
index c3a15d37a..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/8e77a1ae0ef5ee0974856f2a0318b46e98f0e4f9
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/8f2f7f037ede54b9812983536b8a973db7dfe5ec b/fuzz/corpus/fuzz_ds_patricia/8f2f7f037ede54b9812983536b8a973db7dfe5ec
deleted file mode 100644
index f6ca2f3d2..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/8f2f7f037ede54b9812983536b8a973db7dfe5ec
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/8f7756178046d60be6bf9eb02d2920c208aa7a7d b/fuzz/corpus/fuzz_ds_patricia/8f7756178046d60be6bf9eb02d2920c208aa7a7d
deleted file mode 100644
index 540e6b5c8..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/8f7756178046d60be6bf9eb02d2920c208aa7a7d
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/921441816405adb82a95beb9e829eb2d07364e39 b/fuzz/corpus/fuzz_ds_patricia/921441816405adb82a95beb9e829eb2d07364e39
deleted file mode 100644
index 7a9455885..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/921441816405adb82a95beb9e829eb2d07364e39
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/94cfe0c7f792ee42ff43e5559fe0375323b9b68a b/fuzz/corpus/fuzz_ds_patricia/94cfe0c7f792ee42ff43e5559fe0375323b9b68a
deleted file mode 100644
index e6a86cf92..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/94cfe0c7f792ee42ff43e5559fe0375323b9b68a
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/95107e7dc7612da1d0905556f401953c06b3507e b/fuzz/corpus/fuzz_ds_patricia/95107e7dc7612da1d0905556f401953c06b3507e
deleted file mode 100644
index 3c2fe90da..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/95107e7dc7612da1d0905556f401953c06b3507e
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/9764794fc2c7bcb80ca3f42525e4d4e8e32a088f b/fuzz/corpus/fuzz_ds_patricia/9764794fc2c7bcb80ca3f42525e4d4e8e32a088f
deleted file mode 100644
index 9dc4ca1f2..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/9764794fc2c7bcb80ca3f42525e4d4e8e32a088f
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/99a846729e1fa67dde649843fdf554d3d5c14d1e b/fuzz/corpus/fuzz_ds_patricia/99a846729e1fa67dde649843fdf554d3d5c14d1e
deleted file mode 100644
index 91662c870..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/99a846729e1fa67dde649843fdf554d3d5c14d1e
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/9ba1d8c0a69decdd9035db4c60a2aaf66daa9fc1 b/fuzz/corpus/fuzz_ds_patricia/9ba1d8c0a69decdd9035db4c60a2aaf66daa9fc1
deleted file mode 100644
index e85691172..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/9ba1d8c0a69decdd9035db4c60a2aaf66daa9fc1
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/9c3e465891504c1549a8f2d82dc9416c6f029d00 b/fuzz/corpus/fuzz_ds_patricia/9c3e465891504c1549a8f2d82dc9416c6f029d00
deleted file mode 100644
index 07f9852e3..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/9c3e465891504c1549a8f2d82dc9416c6f029d00
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/9cb9002b518cf7158ddd8023b9559f629591cf56 b/fuzz/corpus/fuzz_ds_patricia/9cb9002b518cf7158ddd8023b9559f629591cf56
deleted file mode 100644
index 79531c506..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/9cb9002b518cf7158ddd8023b9559f629591cf56
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/9cc3c1a480c0872bc2f3e8e9539a46951436c1c3 b/fuzz/corpus/fuzz_ds_patricia/9cc3c1a480c0872bc2f3e8e9539a46951436c1c3
deleted file mode 100644
index 940db7966..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/9cc3c1a480c0872bc2f3e8e9539a46951436c1c3
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/9cd8475553e593641897c96d7abd7463f49c2682 b/fuzz/corpus/fuzz_ds_patricia/9cd8475553e593641897c96d7abd7463f49c2682
deleted file mode 100644
index 886a24de0..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/9cd8475553e593641897c96d7abd7463f49c2682
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/9d598f7fa3cdf08e373f27caf61c012aae75ce4d b/fuzz/corpus/fuzz_ds_patricia/9d598f7fa3cdf08e373f27caf61c012aae75ce4d
deleted file mode 100644
index d3ba8fa10..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/9d598f7fa3cdf08e373f27caf61c012aae75ce4d
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/9fa60713c5ae1f3726ae70fd4e8c230c27e10a7e b/fuzz/corpus/fuzz_ds_patricia/9fa60713c5ae1f3726ae70fd4e8c230c27e10a7e
deleted file mode 100644
index 0dcd71b1a..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/9fa60713c5ae1f3726ae70fd4e8c230c27e10a7e
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/a7302ca6b5de89a8840072d6bc28184881e7e5c7 b/fuzz/corpus/fuzz_ds_patricia/a7302ca6b5de89a8840072d6bc28184881e7e5c7
deleted file mode 100644
index 6d257363b..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/a7302ca6b5de89a8840072d6bc28184881e7e5c7
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/a7780546d30ae4eb791b6cef858b87dcf915307b b/fuzz/corpus/fuzz_ds_patricia/a7780546d30ae4eb791b6cef858b87dcf915307b
deleted file mode 100644
index bd64e4d9f..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/a7780546d30ae4eb791b6cef858b87dcf915307b
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/a91405def886e3eccd8ee813609ef32d0b02815b b/fuzz/corpus/fuzz_ds_patricia/a91405def886e3eccd8ee813609ef32d0b02815b
deleted file mode 100644
index f843af5ff..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/a91405def886e3eccd8ee813609ef32d0b02815b
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/aa0a7045de571ac72c4bef04373965d3c062a802 b/fuzz/corpus/fuzz_ds_patricia/aa0a7045de571ac72c4bef04373965d3c062a802
deleted file mode 100644
index f21af4514..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/aa0a7045de571ac72c4bef04373965d3c062a802
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/acadff503aae63ba452f693f9b1af75beeb871c2 b/fuzz/corpus/fuzz_ds_patricia/acadff503aae63ba452f693f9b1af75beeb871c2
deleted file mode 100644
index e5f5a67ee..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/acadff503aae63ba452f693f9b1af75beeb871c2
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/ad11755d5c38e9b4f78b89ea0115891f1e503512 b/fuzz/corpus/fuzz_ds_patricia/ad11755d5c38e9b4f78b89ea0115891f1e503512
deleted file mode 100644
index 66a26c7f8..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/ad11755d5c38e9b4f78b89ea0115891f1e503512
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/ad56cf4fbb246dbfea16651702230fda3e0c9c83 b/fuzz/corpus/fuzz_ds_patricia/ad56cf4fbb246dbfea16651702230fda3e0c9c83
deleted file mode 100644
index 335e795f6..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/ad56cf4fbb246dbfea16651702230fda3e0c9c83
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/ae2ee75e6177727ac0387e2c99ae3a761827d68e b/fuzz/corpus/fuzz_ds_patricia/ae2ee75e6177727ac0387e2c99ae3a761827d68e
deleted file mode 100644
index b1573f088..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/ae2ee75e6177727ac0387e2c99ae3a761827d68e
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/b042b35030eb170c6507e14dd6f00a6e1b670612 b/fuzz/corpus/fuzz_ds_patricia/b042b35030eb170c6507e14dd6f00a6e1b670612
deleted file mode 100644
index cf2b6370a..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/b042b35030eb170c6507e14dd6f00a6e1b670612
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/b41236f1031a78544a0cbed30399f5c63810c858 b/fuzz/corpus/fuzz_ds_patricia/b41236f1031a78544a0cbed30399f5c63810c858
deleted file mode 100644
index f1d8cafbf..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/b41236f1031a78544a0cbed30399f5c63810c858
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/b688eaaf60534a0470b8a153c71dd52f6acde043 b/fuzz/corpus/fuzz_ds_patricia/b688eaaf60534a0470b8a153c71dd52f6acde043
deleted file mode 100644
index 84a29ac97..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/b688eaaf60534a0470b8a153c71dd52f6acde043
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/bafbbb41dfbb7cc1be135d34ad282d54d14fb308 b/fuzz/corpus/fuzz_ds_patricia/bafbbb41dfbb7cc1be135d34ad282d54d14fb308
deleted file mode 100644
index 8fbae7c0c..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/bafbbb41dfbb7cc1be135d34ad282d54d14fb308
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/bcd8153bc8760c12dccfc81e6fce1cee6dc2c1b4 b/fuzz/corpus/fuzz_ds_patricia/bcd8153bc8760c12dccfc81e6fce1cee6dc2c1b4
deleted file mode 100644
index e2bbdff8c..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/bcd8153bc8760c12dccfc81e6fce1cee6dc2c1b4
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/bff088bb8cea1b5dd229632d70941de8c9415889 b/fuzz/corpus/fuzz_ds_patricia/bff088bb8cea1b5dd229632d70941de8c9415889
deleted file mode 100644
index 6ac14e540..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/bff088bb8cea1b5dd229632d70941de8c9415889
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/c4b1f93b79ffcc468bf487d36c12a53f2e20f5be b/fuzz/corpus/fuzz_ds_patricia/c4b1f93b79ffcc468bf487d36c12a53f2e20f5be
deleted file mode 100644
index 640f6f047..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/c4b1f93b79ffcc468bf487d36c12a53f2e20f5be
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/c550a457be7c8589680c0d0eb3a36f3e48d96b17 b/fuzz/corpus/fuzz_ds_patricia/c550a457be7c8589680c0d0eb3a36f3e48d96b17
deleted file mode 100644
index 80cb6cc3d..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/c550a457be7c8589680c0d0eb3a36f3e48d96b17
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/c8d112d02108163b41a166b147a7a44922d7ab49 b/fuzz/corpus/fuzz_ds_patricia/c8d112d02108163b41a166b147a7a44922d7ab49
deleted file mode 100644
index 5172aac07..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/c8d112d02108163b41a166b147a7a44922d7ab49
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/d0b0b56e3a3b9092ab75b212aa07777c48013050 b/fuzz/corpus/fuzz_ds_patricia/d0b0b56e3a3b9092ab75b212aa07777c48013050
deleted file mode 100644
index 8d68c7ff3..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/d0b0b56e3a3b9092ab75b212aa07777c48013050
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/d35119bcdc064dfd438dd5dc943a7d6e64b118bc b/fuzz/corpus/fuzz_ds_patricia/d35119bcdc064dfd438dd5dc943a7d6e64b118bc
deleted file mode 100644
index 01e5bdb5a..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/d35119bcdc064dfd438dd5dc943a7d6e64b118bc
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/d47ffc046a3a67b46138121d4b0752cb770380ae b/fuzz/corpus/fuzz_ds_patricia/d47ffc046a3a67b46138121d4b0752cb770380ae
deleted file mode 100644
index 388654c13..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/d47ffc046a3a67b46138121d4b0752cb770380ae
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/d5c613293379f84fd9d30da74953c74336b3efc7 b/fuzz/corpus/fuzz_ds_patricia/d5c613293379f84fd9d30da74953c74336b3efc7
deleted file mode 100644
index 684fc6ee0..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/d5c613293379f84fd9d30da74953c74336b3efc7
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/d9ea126774547be83e8514cf14bfc46b90e04ae1 b/fuzz/corpus/fuzz_ds_patricia/d9ea126774547be83e8514cf14bfc46b90e04ae1
deleted file mode 100644
index 91866bdf6..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/d9ea126774547be83e8514cf14bfc46b90e04ae1
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/e0b35272e42e26f2396fb30f2601afebeec4760b b/fuzz/corpus/fuzz_ds_patricia/e0b35272e42e26f2396fb30f2601afebeec4760b
deleted file mode 100644
index 378cbfeb1..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/e0b35272e42e26f2396fb30f2601afebeec4760b
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/e0f738b7cc91b246885c5055c7a16ab716053186 b/fuzz/corpus/fuzz_ds_patricia/e0f738b7cc91b246885c5055c7a16ab716053186
deleted file mode 100644
index 610bf4fda..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/e0f738b7cc91b246885c5055c7a16ab716053186
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/e1c65b55e6f0e0f9c878b4127205943903b311c0 b/fuzz/corpus/fuzz_ds_patricia/e1c65b55e6f0e0f9c878b4127205943903b311c0
deleted file mode 100644
index 3d048060e..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/e1c65b55e6f0e0f9c878b4127205943903b311c0
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/e47cab0e163f9522bfd4bc1f3a4f4ef170fe96fd b/fuzz/corpus/fuzz_ds_patricia/e47cab0e163f9522bfd4bc1f3a4f4ef170fe96fd
deleted file mode 100644
index e1abf7f4a..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/e47cab0e163f9522bfd4bc1f3a4f4ef170fe96fd
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/e77f0ad2aede947e4557ca77181c17cfe628e8f9 b/fuzz/corpus/fuzz_ds_patricia/e77f0ad2aede947e4557ca77181c17cfe628e8f9
deleted file mode 100644
index 6a8b48ea4..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/e77f0ad2aede947e4557ca77181c17cfe628e8f9
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/e9ae65ef89f69cde2b8e5b3e2ce14ac98b2c2289 b/fuzz/corpus/fuzz_ds_patricia/e9ae65ef89f69cde2b8e5b3e2ce14ac98b2c2289
deleted file mode 100644
index 311f15263..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/e9ae65ef89f69cde2b8e5b3e2ce14ac98b2c2289
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/ea7d1ce3b3df957829182925f48735fd70e28d1c b/fuzz/corpus/fuzz_ds_patricia/ea7d1ce3b3df957829182925f48735fd70e28d1c
deleted file mode 100644
index 1f3efb89b..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/ea7d1ce3b3df957829182925f48735fd70e28d1c
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/ef6a236812a8235565a4c606ea2c5a9341e4aa41 b/fuzz/corpus/fuzz_ds_patricia/ef6a236812a8235565a4c606ea2c5a9341e4aa41
deleted file mode 100644
index 116c41f38..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/ef6a236812a8235565a4c606ea2c5a9341e4aa41
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/f10e4c67ca64bdce1cd394fd829bf0b5aeed7071 b/fuzz/corpus/fuzz_ds_patricia/f10e4c67ca64bdce1cd394fd829bf0b5aeed7071
deleted file mode 100644
index 0a9d7567a..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/f10e4c67ca64bdce1cd394fd829bf0b5aeed7071
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/f24cf8ce6cf0a9e00e9fcef913843d439792379c b/fuzz/corpus/fuzz_ds_patricia/f24cf8ce6cf0a9e00e9fcef913843d439792379c
deleted file mode 100644
index 67fe193c4..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/f24cf8ce6cf0a9e00e9fcef913843d439792379c
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/f415309e92385cbd8c7d1c6a9a7505e933cb2acf b/fuzz/corpus/fuzz_ds_patricia/f415309e92385cbd8c7d1c6a9a7505e933cb2acf
deleted file mode 100644
index ebe797d0b..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/f415309e92385cbd8c7d1c6a9a7505e933cb2acf
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/f4d7ba52332b71166ca952780db341c5645f04b3 b/fuzz/corpus/fuzz_ds_patricia/f4d7ba52332b71166ca952780db341c5645f04b3
deleted file mode 100644
index 643e1c657..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/f4d7ba52332b71166ca952780db341c5645f04b3
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/f5f68d29ff553b4e63a3f0bb69e4c940bc46c291 b/fuzz/corpus/fuzz_ds_patricia/f5f68d29ff553b4e63a3f0bb69e4c940bc46c291
deleted file mode 100644
index f67a60d06..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/f5f68d29ff553b4e63a3f0bb69e4c940bc46c291
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/f6fd7dd2bb4542f3d8d253768b6d63777d048afa b/fuzz/corpus/fuzz_ds_patricia/f6fd7dd2bb4542f3d8d253768b6d63777d048afa
deleted file mode 100644
index d9fed68be..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/f6fd7dd2bb4542f3d8d253768b6d63777d048afa
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/f9cce96c161f401d73f04ef031404a885eb5da37 b/fuzz/corpus/fuzz_ds_patricia/f9cce96c161f401d73f04ef031404a885eb5da37
deleted file mode 100644
index 2f0142c4c..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/f9cce96c161f401d73f04ef031404a885eb5da37
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/fad5cb6b51a97763038b58addeaa2bd725293ac8 b/fuzz/corpus/fuzz_ds_patricia/fad5cb6b51a97763038b58addeaa2bd725293ac8
deleted file mode 100644
index 62f69055d..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/fad5cb6b51a97763038b58addeaa2bd725293ac8
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/fdd08d361bc7e016b6ad2e41d8b167bff2178777 b/fuzz/corpus/fuzz_ds_patricia/fdd08d361bc7e016b6ad2e41d8b167bff2178777
deleted file mode 100644
index f913a3239..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/fdd08d361bc7e016b6ad2e41d8b167bff2178777
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/ff72929db2b1fdacd24b1aed103bb307bbac7d7f b/fuzz/corpus/fuzz_ds_patricia/ff72929db2b1fdacd24b1aed103bb307bbac7d7f
deleted file mode 100644
index eefeedb2e..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/ff72929db2b1fdacd24b1aed103bb307bbac7d7f
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_ds_patricia/ff82aaaf9375f24492e1bc709bf1518b827fc83d b/fuzz/corpus/fuzz_ds_patricia/ff82aaaf9375f24492e1bc709bf1518b827fc83d
deleted file mode 100644
index 648a4f052..000000000
--- a/fuzz/corpus/fuzz_ds_patricia/ff82aaaf9375f24492e1bc709bf1518b827fc83d
+++ /dev/null
Binary files differ
diff --git a/fuzz/corpus/fuzz_filecfg_category/comment.txt b/fuzz/corpus/fuzz_filecfg_category/comment.txt
new file mode 100644
index 000000000..99e8589b5
--- /dev/null
+++ b/fuzz/corpus/fuzz_filecfg_category/comment.txt
@@ -0,0 +1 @@
+#comment
diff --git a/fuzz/corpus/fuzz_filecfg_category/example.txt b/fuzz/corpus/fuzz_filecfg_category/example.txt
new file mode 100644
index 000000000..a4bb082c2
--- /dev/null
+++ b/fuzz/corpus/fuzz_filecfg_category/example.txt
@@ -0,0 +1 @@
+lop.programtts.top
diff --git a/fuzz/fuzz_common_code.c b/fuzz/fuzz_common_code.c
index 4dbcf3018..d4311b1b6 100644
--- a/fuzz/fuzz_common_code.c
+++ b/fuzz/fuzz_common_code.c
@@ -44,6 +44,7 @@ void fuzz_init_detection_module(struct ndpi_detection_module_struct **ndpi_info_
ndpi_set_config(*ndpi_info_mod, NULL, "log.level", "3");
ndpi_set_config(*ndpi_info_mod, "all", "log", "enable");
+ ndpi_load_domain_suffixes(*ndpi_info_mod, "public_suffix_list.dat");
ndpi_load_categories_dir(*ndpi_info_mod, "./lists/");
ndpi_load_protocols_file(*ndpi_info_mod, "protos.txt");
ndpi_load_categories_file(*ndpi_info_mod, "categories.txt", NULL);
diff --git a/fuzz/fuzz_config.cpp b/fuzz/fuzz_config.cpp
index b85f3752f..f99b87358 100644
--- a/fuzz/fuzz_config.cpp
+++ b/fuzz/fuzz_config.cpp
@@ -32,6 +32,7 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char cfg_value[32];
char cfg_proto[32];
char cfg_param[32];
+ u_int64_t cat_userdata = 0;
/* Just to be sure to have some data */
@@ -65,16 +66,32 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
if(fuzzed_data.ConsumeBool())
ndpi_load_protocols_file(ndpi_info_mod, "protos.txt");
if(fuzzed_data.ConsumeBool())
- ndpi_load_categories_file(ndpi_info_mod, "categories.txt", NULL);
+ ndpi_load_protocols_file(ndpi_info_mod, fuzzed_data.ConsumeBool() ? NULL : "invalid_filename"); /* Error */
+ if(fuzzed_data.ConsumeBool())
+ ndpi_load_categories_file(ndpi_info_mod, "categories.txt", &cat_userdata);
+ if(fuzzed_data.ConsumeBool())
+ ndpi_load_categories_file(ndpi_info_mod, fuzzed_data.ConsumeBool() ? NULL : "invalid_filename", &cat_userdata); /* Error */
if(fuzzed_data.ConsumeBool())
ndpi_load_risk_domain_file(ndpi_info_mod, "risky_domains.txt");
if(fuzzed_data.ConsumeBool())
+ ndpi_load_risk_domain_file(ndpi_info_mod, fuzzed_data.ConsumeBool() ? NULL : "invalid_filename"); /* Error */
+ if(fuzzed_data.ConsumeBool())
ndpi_load_malicious_ja3_file(ndpi_info_mod, "ja3_fingerprints.csv");
if(fuzzed_data.ConsumeBool())
+ ndpi_load_malicious_ja3_file(ndpi_info_mod, fuzzed_data.ConsumeBool() ? NULL : "invalid_filename"); /* Error */
+ if(fuzzed_data.ConsumeBool())
ndpi_load_malicious_sha1_file(ndpi_info_mod, "sha1_fingerprints.csv");
- /* Note that this function is not used by ndpiReader */
if(fuzzed_data.ConsumeBool())
+ ndpi_load_malicious_sha1_file(ndpi_info_mod, fuzzed_data.ConsumeBool() ? NULL : "invalid_filename"); /* Error */
+ if(fuzzed_data.ConsumeBool())
+ ndpi_load_domain_suffixes(ndpi_info_mod, (char *)"public_suffix_list.dat");
+ if(fuzzed_data.ConsumeBool())
+ ndpi_load_domain_suffixes(ndpi_info_mod, fuzzed_data.ConsumeBool() ? NULL : (char *)"invalid_filename"); /* Error */
+ /* Note that this function is not used by ndpiReader */
+ if(fuzzed_data.ConsumeBool()) {
+ ndpi_load_ipv4_ptree(ndpi_info_mod, "invalid_filename", NDPI_PROTOCOL_TLS);
ndpi_load_ipv4_ptree(ndpi_info_mod, "ipv4_addresses.txt", NDPI_PROTOCOL_TLS);
+ }
/* TODO: stub for geo stuff */
ndpi_load_geoip(ndpi_info_mod, NULL, NULL);
@@ -92,11 +109,13 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
value = fuzzed_data.ConsumeIntegralInRange(0, 365 + 1);
sprintf(cfg_value, "%d", value);
ndpi_set_config(ndpi_info_mod, "tls", "certificate_expiration_threshold", cfg_value);
+ ndpi_get_config(ndpi_info_mod, "tls", "certificate_expiration_threshold", cfg_value, sizeof(cfg_value));
}
if(fuzzed_data.ConsumeBool()) {
value = fuzzed_data.ConsumeIntegralInRange(0, 1 + 1);
sprintf(cfg_value, "%d", value);
ndpi_set_config(ndpi_info_mod, "tls", "application_blocks_tracking", cfg_value);
+ ndpi_get_config(ndpi_info_mod, "tls", "application_blocks_tracking", cfg_value, sizeof(cfg_value));
}
if(fuzzed_data.ConsumeBool()) {
value = fuzzed_data.ConsumeIntegralInRange(0, 1 + 1);
@@ -152,6 +171,7 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
value = fuzzed_data.ConsumeIntegralInRange(0, 1 + 1);
sprintf(cfg_value, "%d", value);
ndpi_set_config(ndpi_info_mod, "any", "log", cfg_value);
+ ndpi_get_config(ndpi_info_mod, "any", "log", cfg_value, sizeof(cfg_value));
}
for(i = 0; i < NDPI_MAX_SUPPORTED_PROTOCOLS; i++) {
if(fuzzed_data.ConsumeBool()) {
@@ -160,12 +180,14 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
sprintf(cfg_proto, "%d", i);
/* TODO: we should try to map integer into name */
ndpi_set_config(ndpi_info_mod, cfg_proto, "log", cfg_value);
+ ndpi_get_config(ndpi_info_mod, cfg_proto, "log", cfg_value, sizeof(cfg_value));
}
}
if(fuzzed_data.ConsumeBool()) {
value = fuzzed_data.ConsumeIntegralInRange(0, 1 + 1);
sprintf(cfg_value, "%d", value);
ndpi_set_config(ndpi_info_mod, "any", "ip_list.load", cfg_value);
+ ndpi_get_config(ndpi_info_mod, "any", "ip_list.load", cfg_value, sizeof(cfg_value));
}
for(i = 0; i < NDPI_MAX_SUPPORTED_PROTOCOLS; i++) {
if(fuzzed_data.ConsumeBool()) {
@@ -173,6 +195,7 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
sprintf(cfg_value, "%d", value);
sprintf(cfg_proto, "%d", i);
ndpi_set_config(ndpi_info_mod, cfg_proto, "ip_list.load", cfg_value);
+ ndpi_get_config(ndpi_info_mod, cfg_proto, "ip_list.load", cfg_value, sizeof(cfg_value));
}
}
if(fuzzed_data.ConsumeBool()) {
@@ -231,6 +254,10 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
ndpi_set_config(ndpi_info_mod, NULL, "flow_risk.crawler_bot.list.load", cfg_value);
}
if(fuzzed_data.ConsumeBool()) {
+ ndpi_set_config(ndpi_info_mod, NULL, "filename.config", fuzzed_data.ConsumeBool() ? NULL : (char *)"config.txt");
+ ndpi_get_config(ndpi_info_mod, NULL, "filename.config", cfg_value, sizeof(cfg_value));
+ }
+ if(fuzzed_data.ConsumeBool()) {
value = fuzzed_data.ConsumeIntegralInRange(0, 3 + 1);
sprintf(cfg_value, "%d", value);
ndpi_set_config(ndpi_info_mod, NULL, "log.level", cfg_value);
@@ -323,9 +350,11 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
value = fuzzed_data.ConsumeIntegralInRange(0, 16777215 / 2); /* max / 2 instead of max + 1 to avoid oom on oss-fuzzer */
sprintf(cfg_param, "lru.%s.size", name);
ndpi_set_config(ndpi_info_mod, NULL, cfg_param, cfg_value);
+ ndpi_get_config(ndpi_info_mod, NULL, cfg_param, cfg_value, sizeof(cfg_value));
value = fuzzed_data.ConsumeIntegralInRange(0, 16777215 + 1);
sprintf(cfg_param, "lru.%s.ttl", name);
ndpi_set_config(ndpi_info_mod, NULL, cfg_param, cfg_value);
+ ndpi_get_config(ndpi_info_mod, NULL, cfg_param, cfg_value, sizeof(cfg_value));
}
}
/* Invalid parameter */
@@ -333,13 +362,19 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
value = fuzzed_data.ConsumeIntegralInRange(0, 1 + 1);
sprintf(cfg_value, "%d", value);
ndpi_set_config(ndpi_info_mod, NULL, "foo", cfg_value);
+ ndpi_get_config(ndpi_info_mod, NULL, "foo", cfg_value, sizeof(cfg_value));
}
/* Invalid value */
if(fuzzed_data.ConsumeBool()) {
sprintf(cfg_value, "%s", "jjj");
ndpi_set_config(ndpi_info_mod, NULL, "lru.stun_zoom.ttl", cfg_value);
+ ndpi_get_config(ndpi_info_mod, NULL, "lru.stun_zoom.ttl", cfg_value, sizeof(cfg_value));
}
+ ndpi_add_host_risk_mask(ndpi_info_mod,
+ (char *)fuzzed_data.ConsumeBytesAsString(32).c_str(),
+ static_cast<ndpi_risk>(fuzzed_data.ConsumeIntegral<u_int64_t>()));
+
ndpi_finalize_initialization(ndpi_info_mod);
/* Random protocol configuration */
@@ -355,8 +390,26 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
ndpi_is_subprotocol_informative(ndpi_info_mod, pid);
ndpi_get_proto_breed(ndpi_info_mod, pid);
+ ndpi_port_range d_port[MAX_DEFAULT_PORTS] = {};
+ ndpi_set_proto_defaults(ndpi_info_mod, 0, 0, NDPI_PROTOCOL_SAFE, pid,
+ protoname, NDPI_PROTOCOL_CATEGORY_UNSPECIFIED,
+ d_port, d_port);
+
ndpi_get_proto_by_name(ndpi_info_mod, NULL); /* Error */
ndpi_get_proto_by_name(ndpi_info_mod, "foo"); /* Invalid protocol */
+ ndpi_get_proto_name(ndpi_info_mod, pid);
+ ndpi_get_protocol_id(ndpi_info_mod, protoname);
+
+ struct in_addr pin;
+ struct in6_addr pin6;
+ pin.s_addr = fuzzed_data.ConsumeIntegral<u_int32_t>();
+ ndpi_network_port_ptree_match(ndpi_info_mod, &pin, fuzzed_data.ConsumeIntegral<u_int16_t>());
+ for(i = 0; i < 16; i++)
+ pin6.s6_addr[i] = fuzzed_data.ConsumeIntegral<u_int8_t>();
+ ndpi_network_port_ptree6_match(ndpi_info_mod, &pin6, fuzzed_data.ConsumeIntegral<u_int16_t>());
+
+ ndpi_get_host_domain_suffix(ndpi_info_mod, fuzzed_data.ConsumeBool() ? NULL : "www.bbc.co.uk");
+ ndpi_get_host_domain(ndpi_info_mod, fuzzed_data.ConsumeBool() ? NULL : "www.bbc.co.uk");
/* Custom category configuration */
cat = fuzzed_data.ConsumeIntegralInRange(static_cast<int>(NDPI_PROTOCOL_CATEGORY_CUSTOM_1),
@@ -376,10 +429,10 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
ndpi_self_check_host_match(stdout);
- ndpi_dump_protocols(ndpi_info_mod, stdout);
- ndpi_generate_options(fuzzed_data.ConsumeIntegralInRange(0, 4), stdout);
- ndpi_dump_risks_score(stdout);
- ndpi_dump_config(ndpi_info_mod, stdout);
+ ndpi_dump_protocols(ndpi_info_mod, fuzzed_data.ConsumeBool() ? NULL : stdout);
+ ndpi_generate_options(fuzzed_data.ConsumeIntegralInRange(0, 4), fuzzed_data.ConsumeBool() ? NULL : stdout);
+ ndpi_dump_risks_score(fuzzed_data.ConsumeBool() ? NULL : stdout);
+ ndpi_dump_config(ndpi_info_mod, fuzzed_data.ConsumeBool() ? NULL : stdout);
/* Basic code to try testing this "config" */
bool_value = fuzzed_data.ConsumeBool();
@@ -388,6 +441,12 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
memset(&flow, 0, sizeof(flow));
std::vector<uint8_t>pkt = fuzzed_data.ConsumeRemainingBytes<uint8_t>();
+ const u_int8_t *l4_return;
+ u_int16_t l4_len_return;
+ u_int8_t l4_protocol_return;
+ ndpi_detection_get_l4(pkt.data(), pkt.size(), &l4_return, &l4_len_return, &l4_protocol_return, NDPI_DETECTION_ONLY_IPV6);
+ ndpi_detection_get_l4(pkt.data(), pkt.size(), &l4_return, &l4_len_return, &l4_protocol_return, NDPI_DETECTION_ONLY_IPV4);
+
ndpi_detection_process_packet(ndpi_info_mod, &flow, pkt.data(), pkt.size(), 0, &input_info);
p = ndpi_detection_giveup(ndpi_info_mod, &flow, &protocol_was_guessed);
@@ -406,7 +465,6 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
ndpi_get_http_method(ndpi_info_mod, bool_value ? &flow : NULL);
ndpi_get_http_url(ndpi_info_mod, &flow);
ndpi_get_http_content_type(ndpi_info_mod, &flow);
- check_for_email_address(ndpi_info_mod, 0);
ndpi_get_flow_name(bool_value ? &flow : NULL);
/* ndpi_guess_undetected_protocol() is a "strange" function. Try fuzzing it, here */
if(!ndpi_is_protocol_detected(ndpi_info_mod, p)) {
@@ -423,7 +481,7 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
flow.c_address.v4, flow.c_port,
flow.s_address.v4, flow.s_port);
} else {
- ndpi_find_ipv6_category_userdata(ndpi_info_mod, (struct in6_addr *)flow.c_address.v6);
+ ndpi_find_ipv6_category_userdata(ndpi_info_mod, bool_value ? NULL : (struct in6_addr *)flow.c_address.v6);
}
/* Another "strange" function: fuzz it here, for lack of a better alternative */
ndpi_search_tcp_or_udp(ndpi_info_mod, &flow);
diff --git a/fuzz/fuzz_ds_ahocorasick.cpp b/fuzz/fuzz_ds_ahocorasick.cpp
index 3333cad3e..949cc4b6d 100644
--- a/fuzz/fuzz_ds_ahocorasick.cpp
+++ b/fuzz/fuzz_ds_ahocorasick.cpp
@@ -23,6 +23,7 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
u_int16_t protocol_id;
ndpi_protocol_category_t category;
ndpi_protocol_breed_t breed;
+ u_int32_t unused;
/* TODO: real string instead of random bytes */
@@ -120,7 +121,9 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
ndpi_free(value_dup);
- ndpi_match_string(a2, (char *)value.c_str());
+ ndpi_match_string(a2, fuzzed_data.ConsumeBool() ? NULL : (char *)value.c_str());
+ ndpi_match_string_value(a2, fuzzed_data.ConsumeBool() ? NULL : (char *)value.c_str(),
+ strlen(value.c_str()), &unused);
ndpi_match_string_protocol_id(a2, (char *)value.c_str(), strlen(value.c_str()),
&protocol_id, &category, &breed);
}
@@ -133,6 +136,7 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
ac_automata_search(a, &ac_input_text, &match);
ndpi_match_string(a2, value_added);
+ ndpi_match_string_value(a2, value_added, strlen(value_added), &unused);
ndpi_match_string_protocol_id(a2, value_added, strlen(value_added),
&protocol_id, &category, &breed);
diff --git a/fuzz/fuzz_ds_patricia.cpp b/fuzz/fuzz_ds_patricia.cpp
index 58e098b45..1bd2e2d0d 100644
--- a/fuzz/fuzz_ds_patricia.cpp
+++ b/fuzz/fuzz_ds_patricia.cpp
@@ -20,10 +20,11 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
u_int16_t i, num_iteration, ip_len;
ndpi_patricia_tree_t *p, *p_cloned;
u_int16_t maxbits;
- int is_ipv6, is_added = 0;
+ int is_added = 0;
ndpi_prefix_t prefix, prefix_added;
u_char *ip;
ndpi_patricia_node_t *node;
+ int tree_type; /* 0: ipv4, 1: ipv6, 2: mac */
/* Just to have some data */
if (fuzzed_data.remaining_bytes() < 1024)
@@ -32,11 +33,13 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
/* To allow memory allocation failures */
fuzz_set_alloc_callbacks_and_seed(size);
- is_ipv6 = fuzzed_data.ConsumeBool();
- if (is_ipv6)
+ tree_type = fuzzed_data.ConsumeIntegralInRange(0, 2);
+ if (tree_type == 0)
+ maxbits = 32;
+ else if (tree_type == 1)
maxbits = 128;
else
- maxbits = 32;
+ maxbits = 48;
p = ndpi_patricia_new(maxbits);
@@ -47,7 +50,7 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
/* "Random" add */
num_iteration = fuzzed_data.ConsumeIntegral<u_int8_t>();
for (i = 0; i < num_iteration; i++) {
- if (!is_ipv6) {
+ if (tree_type == 0) {
if(fuzzed_data.remaining_bytes() > 4) {
std::vector<u_int8_t>data = fuzzed_data.ConsumeBytes<u_int8_t>(4);
ip = data.data();
@@ -67,7 +70,7 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
assert(ndpi_patricia_get_node_u64(node) == 0);
}
}
- } else {
+ } else if (tree_type == 1){
if(fuzzed_data.remaining_bytes() > 16) {
std::vector<u_int8_t>data = fuzzed_data.ConsumeBytes<u_int8_t>(16);
ip = data.data();
@@ -87,6 +90,26 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
assert(ndpi_patricia_get_node_u64(node) == 0);
}
}
+ } else {
+ if(fuzzed_data.remaining_bytes() > 6) {
+ std::vector<u_int8_t>data = fuzzed_data.ConsumeBytes<u_int8_t>(6);
+ ip = data.data();
+ ip_len = fuzzed_data.ConsumeIntegralInRange(0, 49); /* 49 to force error */
+ ndpi_fill_prefix_mac(&prefix, ip, ip_len, 48);
+ node = ndpi_patricia_lookup(p, &prefix);
+ /* Keep one random node really added */
+ if (node && is_added == 0 && fuzzed_data.ConsumeBool()) {
+ is_added = 1;
+ prefix_added = prefix;
+ /* Some random operations on this node */
+ ndpi_patricia_get_node_prefix(node);
+ ndpi_patricia_get_node_bits(node);
+ ndpi_patricia_set_node_data(node, NULL);
+ assert(ndpi_patricia_get_node_data(node) == NULL);
+ ndpi_patricia_set_node_u64(node, 0);
+ assert(ndpi_patricia_get_node_u64(node) == 0);
+ }
+ }
}
}
@@ -96,7 +119,7 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
/* "Random" exact search. Remove if found */
num_iteration = fuzzed_data.ConsumeIntegral<u_int8_t>();
for (i = 0; i < num_iteration; i++) {
- if (!is_ipv6) {
+ if (tree_type == 0) {
if(fuzzed_data.remaining_bytes() > 4) {
std::vector<u_int8_t>data = fuzzed_data.ConsumeBytes<u_int8_t>(4);
ip = data.data();
@@ -106,7 +129,7 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
if (node)
ndpi_patricia_remove(p, node);
}
- } else {
+ } else if (tree_type == 1) {
if(fuzzed_data.remaining_bytes() > 16) {
std::vector<u_int8_t>data = fuzzed_data.ConsumeBytes<u_int8_t>(16);
ip = data.data();
@@ -116,7 +139,18 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
if (node)
ndpi_patricia_remove(p, node);
}
+ } else {
+ if(fuzzed_data.remaining_bytes() > 6) {
+ std::vector<u_int8_t>data = fuzzed_data.ConsumeBytes<u_int8_t>(6);
+ ip = data.data();
+ ip_len = fuzzed_data.ConsumeIntegralInRange(0, 48);
+ ndpi_fill_prefix_mac(&prefix, ip, ip_len, 48);
+ node = ndpi_patricia_search_exact(p, &prefix);
+ if (node)
+ ndpi_patricia_remove(p, node);
+ }
}
+
}
/* Exact search of an added node */
if (is_added)
@@ -125,7 +159,7 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
/* "Random" best search. Remove if found */
num_iteration = fuzzed_data.ConsumeIntegral<u_int8_t>();
for (i = 0; i < num_iteration; i++) {
- if (!is_ipv6) {
+ if (tree_type == 0) {
if(fuzzed_data.remaining_bytes() > 4) {
std::vector<u_int8_t>data = fuzzed_data.ConsumeBytes<u_int8_t>(4);
ip = data.data();
@@ -135,7 +169,7 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
if (node)
ndpi_patricia_remove(p, node);
}
- } else {
+ } else if (tree_type == 1) {
if(fuzzed_data.remaining_bytes() > 16) {
std::vector<u_int8_t>data = fuzzed_data.ConsumeBytes<u_int8_t>(16);
ip = data.data();
@@ -145,6 +179,16 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
if (node)
ndpi_patricia_remove(p, node);
}
+ } else {
+ if(fuzzed_data.remaining_bytes() > 6) {
+ std::vector<u_int8_t>data = fuzzed_data.ConsumeBytes<u_int8_t>(6);
+ ip = data.data();
+ ip_len = fuzzed_data.ConsumeIntegralInRange(0, 48);
+ ndpi_fill_prefix_mac(&prefix, ip, ip_len, 48);
+ node = ndpi_patricia_search_best(p, &prefix);
+ if (node)
+ ndpi_patricia_remove(p, node);
+ }
}
}
/* Best search of an added node */
diff --git a/fuzz/fuzz_filecfg_category.c b/fuzz/fuzz_filecfg_category.c
new file mode 100644
index 000000000..757ada01f
--- /dev/null
+++ b/fuzz/fuzz_filecfg_category.c
@@ -0,0 +1,27 @@
+#include "ndpi_api.h"
+#include "ndpi_private.h"
+#include "fuzz_common_code.h"
+
+int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
+ struct ndpi_detection_module_struct *ndpi_struct;
+ FILE *fd;
+ NDPI_PROTOCOL_BITMASK all;
+
+ /* To allow memory allocation failures */
+ fuzz_set_alloc_callbacks_and_seed(size);
+
+ ndpi_struct = ndpi_init_detection_module();
+ NDPI_BITMASK_SET_ALL(all);
+ ndpi_set_protocol_detection_bitmask2(ndpi_struct, &all);
+
+ ndpi_set_config(ndpi_struct, NULL, "log.level", "3");
+ ndpi_set_config(ndpi_struct, "all", "log", "1");
+
+ fd = buffer_to_file(data, size);
+ load_category_file_fd(ndpi_struct, fd, NDPI_PROTOCOL_CATEGORY_VOIP /* random category */);
+ if(fd)
+ fclose(fd);
+
+ ndpi_exit_detection_module(ndpi_struct);
+ return 0;
+}
diff --git a/fuzz/ipv4_addresses.txt b/fuzz/ipv4_addresses.txt
index 209765e5a..76065bd2a 100644
--- a/fuzz/ipv4_addresses.txt
+++ b/fuzz/ipv4_addresses.txt
@@ -3,4 +3,5 @@
192.168.5.5
192.168.5.6/32
192.168.4.0/24
+192.168.4.1