diff options
Diffstat (limited to 'fuzz')
177 files changed, 408 insertions, 26 deletions
diff --git a/fuzz/Makefile.am b/fuzz/Makefile.am index 062cddb4c..c16d083a6 100644 --- a/fuzz/Makefile.am +++ b/fuzz/Makefile.am @@ -1,8 +1,8 @@ -bin_PROGRAMS = fuzz_process_packet fuzz_ndpi_reader fuzz_ndpi_reader_alloc_fail fuzz_quic_get_crypto_data fuzz_config +bin_PROGRAMS = fuzz_process_packet fuzz_ndpi_reader fuzz_ndpi_reader_alloc_fail fuzz_quic_get_crypto_data fuzz_config fuzz_community_id #Alghoritms bin_PROGRAMS += fuzz_alg_bins fuzz_alg_hll fuzz_alg_hw_rsi_outliers_da fuzz_alg_jitter fuzz_alg_ses_des #Data structures -bin_PROGRAMS += fuzz_ds_patricia fuzz_ds_ahocorasick +bin_PROGRAMS += fuzz_ds_patricia fuzz_ds_ahocorasick fuzz_ds_libcache fuzz_ds_tree fuzz_process_packet_SOURCES = fuzz_process_packet.c fuzz_common_code.c fuzz_process_packet_CFLAGS = @NDPI_CFLAGS@ $(CXXFLAGS) @@ -71,6 +71,21 @@ fuzz_config_LINK=$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CXX) @NDPI_CFLAGS@ $(AM_CXXFLAGS) $(CXXFLAGS) \ $(fuzz_config_LDFLAGS) @NDPI_LDFLAGS@ $(LDFLAGS) -o $@ +fuzz_community_id_SOURCES = fuzz_community_id.cpp fuzz_common_code.c +fuzz_community_id_CXXFLAGS = @NDPI_CFLAGS@ $(CXXFLAGS) -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION +fuzz_community_id_CFLAGS = @NDPI_CFLAGS@ $(CXXFLAGS) -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION +fuzz_community_id_LDADD = ../src/lib/libndpi.a $(ADDITIONAL_LIBS) +fuzz_community_id_LDFLAGS = $(LIBS) +if HAS_FUZZLDFLAGS +fuzz_community_id_CXXFLAGS += $(LIB_FUZZING_ENGINE) +fuzz_community_id_CFLAGS += $(LIB_FUZZING_ENGINE) +fuzz_community_id_LDFLAGS += $(LIB_FUZZING_ENGINE) +endif +# force usage of CXX for linker +fuzz_community_id_LINK=$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CXX) @NDPI_CFLAGS@ $(AM_CXXFLAGS) $(CXXFLAGS) \ + $(fuzz_community_id_LDFLAGS) @NDPI_LDFLAGS@ $(LDFLAGS) -o $@ + fuzz_alg_bins_SOURCES = fuzz_alg_bins.cpp fuzz_common_code.c fuzz_alg_bins_CXXFLAGS = @NDPI_CFLAGS@ $(CXXFLAGS) -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION fuzz_alg_bins_CFLAGS = @NDPI_CFLAGS@ $(CXXFLAGS) -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION @@ -176,6 +191,36 @@ fuzz_ds_ahocorasick_LINK=$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CXX) @NDPI_CFLAGS@ $(AM_CXXFLAGS) $(CXXFLAGS) \ $(fuzz_ds_ahocorasick_LDFLAGS) @NDPI_LDFLAGS@ $(LDFLAGS) -o $@ +fuzz_ds_libcache_SOURCES = fuzz_ds_libcache.cpp fuzz_common_code.c +fuzz_ds_libcache_CXXFLAGS = @NDPI_CFLAGS@ $(CXXFLAGS) -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION +fuzz_ds_libcache_CFLAGS = @NDPI_CFLAGS@ $(CXXFLAGS) -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION +fuzz_ds_libcache_LDADD = ../src/lib/libndpi.a $(ADDITIONAL_LIBS) +fuzz_ds_libcache_LDFLAGS = $(LIBS) +if HAS_FUZZLDFLAGS +fuzz_ds_libcache_CXXFLAGS += $(LIB_FUZZING_ENGINE) +fuzz_ds_libcache_CFLAGS += $(LIB_FUZZING_ENGINE) +fuzz_ds_libcache_LDFLAGS += $(LIB_FUZZING_ENGINE) +endif +# force usage of CXX for linker +fuzz_ds_libcache_LINK=$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CXX) @NDPI_CFLAGS@ $(AM_CXXFLAGS) $(CXXFLAGS) \ + $(fuzz_ds_libcache_LDFLAGS) @NDPI_LDFLAGS@ $(LDFLAGS) -o $@ + +fuzz_ds_tree_SOURCES = fuzz_ds_tree.cpp fuzz_common_code.c +fuzz_ds_tree_CXXFLAGS = @NDPI_CFLAGS@ $(CXXFLAGS) -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION +fuzz_ds_tree_CFLAGS = @NDPI_CFLAGS@ $(CXXFLAGS) -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION +fuzz_ds_tree_LDADD = ../src/lib/libndpi.a $(ADDITIONAL_LIBS) +fuzz_ds_tree_LDFLAGS = $(LIBS) +if HAS_FUZZLDFLAGS +fuzz_ds_tree_CXXFLAGS += $(LIB_FUZZING_ENGINE) +fuzz_ds_tree_CFLAGS += $(LIB_FUZZING_ENGINE) +fuzz_ds_tree_LDFLAGS += $(LIB_FUZZING_ENGINE) +endif +# force usage of CXX for linker +fuzz_ds_tree_LINK=$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CXX) @NDPI_CFLAGS@ $(AM_CXXFLAGS) $(CXXFLAGS) \ + $(fuzz_ds_tree_LDFLAGS) @NDPI_LDFLAGS@ $(LDFLAGS) -o $@ + # required for Google oss-fuzz # see https://github.com/google/oss-fuzz/tree/master/projects/ndpi @@ -197,6 +242,11 @@ files_corpus_fuzz_config := $(wildcard corpus/fuzz_config/*) fuzz_config_seed_corpus.zip: $(files_corpus_fuzz_config) zip -j fuzz_config_seed_corpus.zip $(files_corpus_fuzz_config) +files_corpus_fuzz_community_id := $(wildcard corpus/fuzz_community_id/*) + +fuzz_community_id_seed_corpus.zip: $(files_corpus_fuzz_community_id) + zip -j fuzz_community_id_seed_corpus.zip $(files_corpus_fuzz_community_id) + files_corpus_fuzz_ds_patricia := $(wildcard corpus/fuzz_ds_patricia/*) fuzz_ds_patricia_seed_corpus.zip: $(files_corpus_fuzz_ds_patricia) @@ -232,7 +282,25 @@ files_corpus_fuzz_alg_jitter := $(wildcard corpus/fuzz_alg_jitter/*) fuzz_alg_jitter_seed_corpus.zip: $(files_corpus_fuzz_alg_jitter) zip -j fuzz_alg_jitter_seed_corpus.zip $(files_corpus_fuzz_alg_jitter) -corpus: fuzz_ndpi_reader_seed_corpus.zip fuzz_ndpi_reader_alloc_fail_seed_corpus.zip fuzz_quic_get_crypto_data_seed_corpus.zip fuzz_config_seed_corpus.zip fuzz_ds_patricia_seed_corpus.zip fuzz_ds_ahocorasick_seed_corpus.zip fuzz_alg_ses_des_seed_corpus.zip fuzz_alg_hw_rsi_outliers_da_seed_corpus.zip fuzz_alg_bins_seed_corpus.zip fuzz_alg_hll_seed_corpus.zip fuzz_alg_jitter_seed_corpus.zip +files_corpus_fuzz_ds_libcache := $(wildcard corpus/fuzz_ds_libcache/*) + +fuzz_ds_libcache_seed_corpus.zip: $(files_corpus_fuzz_ds_libcache) + zip -j fuzz_ds_libcache_seed_corpus.zip $(files_corpus_fuzz_ds_libcache) + +files_corpus_fuzz_ds_tree := $(wildcard corpus/fuzz_ds_tree/*) + +fuzz_ds_tree_seed_corpus.zip: $(files_corpus_fuzz_ds_tree) + zip -j fuzz_ds_tree_seed_corpus.zip $(files_corpus_fuzz_ds_tree) + +corpus: fuzz_ndpi_reader_seed_corpus.zip fuzz_ndpi_reader_alloc_fail_seed_corpus.zip fuzz_quic_get_crypto_data_seed_corpus.zip fuzz_config_seed_corpus.zip fuzz_ds_patricia_seed_corpus.zip fuzz_ds_ahocorasick_seed_corpus.zip fuzz_alg_ses_des_seed_corpus.zip fuzz_alg_hw_rsi_outliers_da_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 + +#Create dictionaries exactly as expected by oss-fuzz. +#This way, if we need to change/update/add something, +#we don't need to update scripts in oss-fuzz repository +dictionaries: + cp dictionary.dict fuzz_ndpi_reader.dict + cp dictionary.dict fuzz_ndpi_reader_alloc_fail.dict + cp dictionary.dict fuzz_process_packet.dict distdir: find . -type d | xargs -I'{}' mkdir -p '$(distdir)/{}' @@ -240,14 +308,18 @@ distdir: -o -name '*.am' \ -o -name '*.h' \ -o -name '*.cpp' \ + -o -name '*.dict' \ -o -path './corpus/fuzz_quic_get_crypto_data/*' \ -o -path './corpus/fuzz_config/*' \ + -o -path './corpus/fuzz_community_id/*' \ -o -path './corpus/fuzz_alg_ses_des/*' \ -o -path './corpus/fuzz_alg_bins/*' \ -o -path './corpus/fuzz_alg_hll/*' \ -o -path './corpus/fuzz_alg_jitter/*' \ -o -path './corpus/fuzz_alg_hw_rsi_outliers_da/*' \ -o -path './corpus/fuzz_ds_ahocorasick/*' \ + -o -path './corpus/fuzz_ds_libcache/*' \ + -o -path './corpus/fuzz_ds_tree/*' \ -o -path './corpus/fuzz_ds_patricia/*' | xargs -I'{}' cp -r '{}' '$(distdir)/{}' -all: corpus +all: corpus dictionaries diff --git a/fuzz/corpus/fuzz_community_id/1c058ffec9481e8cdfda408b9fa7085e12993f63 b/fuzz/corpus/fuzz_community_id/1c058ffec9481e8cdfda408b9fa7085e12993f63 new file mode 100644 index 000000000..ab20ba6e9 --- /dev/null +++ b/fuzz/corpus/fuzz_community_id/1c058ffec9481e8cdfda408b9fa7085e12993f63 @@ -0,0 +1 @@ +šññšš
\ No newline at end of file diff --git a/fuzz/corpus/fuzz_community_id/2a141aaf9ea071fd3b4e3d281c50a6374da29f3e b/fuzz/corpus/fuzz_community_id/2a141aaf9ea071fd3b4e3d281c50a6374da29f3e new file mode 100644 index 000000000..377d6f0f9 --- /dev/null +++ b/fuzz/corpus/fuzz_community_id/2a141aaf9ea071fd3b4e3d281c50a6374da29f3e @@ -0,0 +1 @@ +wwwwwwwš
\ No newline at end of file diff --git a/fuzz/corpus/fuzz_community_id/2aa3f89375e3ecbd22b1170a9066db2dbfca94b5 b/fuzz/corpus/fuzz_community_id/2aa3f89375e3ecbd22b1170a9066db2dbfca94b5 new file mode 100644 index 000000000..406a91228 --- /dev/null +++ b/fuzz/corpus/fuzz_community_id/2aa3f89375e3ecbd22b1170a9066db2dbfca94b5 @@ -0,0 +1 @@ +š¦ˆˆˆˆˆññšš
\ No newline at end of file diff --git a/fuzz/corpus/fuzz_community_id/3c722a326b6cee579b995354d0275c86f1c8410c b/fuzz/corpus/fuzz_community_id/3c722a326b6cee579b995354d0275c86f1c8410c new file mode 100644 index 000000000..ea472b385 --- /dev/null +++ b/fuzz/corpus/fuzz_community_id/3c722a326b6cee579b995354d0275c86f1c8410c @@ -0,0 +1 @@ +@š
\ No newline at end of file diff --git a/fuzz/corpus/fuzz_community_id/45e29e99716f52af087b34c1f09c253210172e16 b/fuzz/corpus/fuzz_community_id/45e29e99716f52af087b34c1f09c253210172e16 new file mode 100644 index 000000000..fcee7b2a2 --- /dev/null +++ b/fuzz/corpus/fuzz_community_id/45e29e99716f52af087b34c1f09c253210172e16 @@ -0,0 +1 @@ +šñš
\ No newline at end of file diff --git a/fuzz/corpus/fuzz_community_id/46dead9096cafd6fb8fa4f2c60012f3d041a20bd b/fuzz/corpus/fuzz_community_id/46dead9096cafd6fb8fa4f2c60012f3d041a20bd new file mode 100644 index 000000000..1975e92d9 --- /dev/null +++ b/fuzz/corpus/fuzz_community_id/46dead9096cafd6fb8fa4f2c60012f3d041a20bd @@ -0,0 +1 @@ +š'$š
\ No newline at end of file diff --git a/fuzz/corpus/fuzz_community_id/4a8f2a58a6a4cbfc71faa980308fb7cc5ee1f4f0 b/fuzz/corpus/fuzz_community_id/4a8f2a58a6a4cbfc71faa980308fb7cc5ee1f4f0 new file mode 100644 index 000000000..8b13124d1 --- /dev/null +++ b/fuzz/corpus/fuzz_community_id/4a8f2a58a6a4cbfc71faa980308fb7cc5ee1f4f0 @@ -0,0 +1 @@ +fbå๹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹
\ No newline at end of file diff --git a/fuzz/corpus/fuzz_community_id/58e6b3a414a1e090dfc6029add0f3555ccba127f b/fuzz/corpus/fuzz_community_id/58e6b3a414a1e090dfc6029add0f3555ccba127f new file mode 100644 index 000000000..9cbe6ea56 --- /dev/null +++ b/fuzz/corpus/fuzz_community_id/58e6b3a414a1e090dfc6029add0f3555ccba127f @@ -0,0 +1 @@ +e
\ No newline at end of file diff --git a/fuzz/corpus/fuzz_community_id/63ca47311f24473a100f131ad9ae08128b169022 b/fuzz/corpus/fuzz_community_id/63ca47311f24473a100f131ad9ae08128b169022 new file mode 100644 index 000000000..471fd986e --- /dev/null +++ b/fuzz/corpus/fuzz_community_id/63ca47311f24473a100f131ad9ae08128b169022 @@ -0,0 +1 @@ +šññ&šš
\ No newline at end of file diff --git a/fuzz/corpus/fuzz_community_id/753c246d759eb3bd906f929b77d86c8915a655f7 b/fuzz/corpus/fuzz_community_id/753c246d759eb3bd906f929b77d86c8915a655f7 new file mode 100644 index 000000000..a85ba65c9 --- /dev/null +++ b/fuzz/corpus/fuzz_community_id/753c246d759eb3bd906f929b77d86c8915a655f7 @@ -0,0 +1 @@ +w*6666
\ No newline at end of file diff --git a/fuzz/corpus/fuzz_community_id/82d71306d4eddb7279da80cd7c1be092b642eca8 b/fuzz/corpus/fuzz_community_id/82d71306d4eddb7279da80cd7c1be092b642eca8 new file mode 100644 index 000000000..42017154c --- /dev/null +++ b/fuzz/corpus/fuzz_community_id/82d71306d4eddb7279da80cd7c1be092b642eca8 @@ -0,0 +1 @@ +6wwwww‚wš
\ No newline at end of file diff --git a/fuzz/corpus/fuzz_community_id/a478a85347f063f3f854f5d976c0196171270242 b/fuzz/corpus/fuzz_community_id/a478a85347f063f3f854f5d976c0196171270242 new file mode 100644 index 000000000..afd26a70c --- /dev/null +++ b/fuzz/corpus/fuzz_community_id/a478a85347f063f3f854f5d976c0196171270242 @@ -0,0 +1 @@ +ÿÿÿÿÿÿQ
\ No newline at end of file diff --git a/fuzz/corpus/fuzz_community_id/acb348360f8e8b083fec3515d39f58e4cabecee7 b/fuzz/corpus/fuzz_community_id/acb348360f8e8b083fec3515d39f58e4cabecee7 Binary files differnew file mode 100644 index 000000000..538f1e344 --- /dev/null +++ b/fuzz/corpus/fuzz_community_id/acb348360f8e8b083fec3515d39f58e4cabecee7 diff --git a/fuzz/corpus/fuzz_community_id/bb8face00f6b5c75a869f51b660c0f4995b36231 b/fuzz/corpus/fuzz_community_id/bb8face00f6b5c75a869f51b660c0f4995b36231 new file mode 100644 index 000000000..07e3211b0 --- /dev/null +++ b/fuzz/corpus/fuzz_community_id/bb8face00f6b5c75a869f51b660c0f4995b36231 @@ -0,0 +1 @@ +ž'$š¦ˆˆšˆˆxbb
\ No newline at end of file diff --git a/fuzz/corpus/fuzz_community_id/c88c17fdae9667e8785ea750a50a5d7f3ca5b465 b/fuzz/corpus/fuzz_community_id/c88c17fdae9667e8785ea750a50a5d7f3ca5b465 new file mode 100644 index 000000000..64d4d01c7 --- /dev/null +++ b/fuzz/corpus/fuzz_community_id/c88c17fdae9667e8785ea750a50a5d7f3ca5b465 @@ -0,0 +1 @@ +š
\ No newline at end of file diff --git a/fuzz/corpus/fuzz_community_id/ca4497abb2cc0324de9f909323ceffcb76f38fa3 b/fuzz/corpus/fuzz_community_id/ca4497abb2cc0324de9f909323ceffcb76f38fa3 new file mode 100644 index 000000000..adfae8dc1 --- /dev/null +++ b/fuzz/corpus/fuzz_community_id/ca4497abb2cc0324de9f909323ceffcb76f38fa3 @@ -0,0 +1 @@ +š
\ No newline at end of file diff --git a/fuzz/corpus/fuzz_community_id/f8695f500111093908125cd6fdb13fed4eb33c6a b/fuzz/corpus/fuzz_community_id/f8695f500111093908125cd6fdb13fed4eb33c6a new file mode 100644 index 000000000..ed59e749d --- /dev/null +++ b/fuzz/corpus/fuzz_community_id/f8695f500111093908125cd6fdb13fed4eb33c6a @@ -0,0 +1 @@ +ÿÿÿÿÿÿÿÿÿÿš
\ No newline at end of file diff --git a/fuzz/corpus/fuzz_config/1249190e598bc25b8a9837818b3e1a4058ec41d3 b/fuzz/corpus/fuzz_config/1249190e598bc25b8a9837818b3e1a4058ec41d3 Binary files differdeleted file mode 100644 index e4dceba51..000000000 --- a/fuzz/corpus/fuzz_config/1249190e598bc25b8a9837818b3e1a4058ec41d3 +++ /dev/null diff --git a/fuzz/corpus/fuzz_config/18f477174966a8c7da55285963d41aed0dc4662d b/fuzz/corpus/fuzz_config/18f477174966a8c7da55285963d41aed0dc4662d Binary files differnew file mode 100644 index 000000000..2b9a4184b --- /dev/null +++ b/fuzz/corpus/fuzz_config/18f477174966a8c7da55285963d41aed0dc4662d diff --git a/fuzz/corpus/fuzz_config/1b27923041cd9943fec04f9e795252294a140884 b/fuzz/corpus/fuzz_config/1b27923041cd9943fec04f9e795252294a140884 Binary files differnew file mode 100644 index 000000000..75427c8d2 --- /dev/null +++ b/fuzz/corpus/fuzz_config/1b27923041cd9943fec04f9e795252294a140884 diff --git a/fuzz/corpus/fuzz_config/29047258f7805691132b963a65cf521562335f5e b/fuzz/corpus/fuzz_config/29047258f7805691132b963a65cf521562335f5e Binary files differdeleted file mode 100644 index afc219a99..000000000 --- a/fuzz/corpus/fuzz_config/29047258f7805691132b963a65cf521562335f5e +++ /dev/null diff --git a/fuzz/corpus/fuzz_config/429006ad0dd8e61198ea14fc50788cd9e48847b6 b/fuzz/corpus/fuzz_config/429006ad0dd8e61198ea14fc50788cd9e48847b6 Binary files differdeleted file mode 100644 index caa9d052d..000000000 --- a/fuzz/corpus/fuzz_config/429006ad0dd8e61198ea14fc50788cd9e48847b6 +++ /dev/null diff --git a/fuzz/corpus/fuzz_config/4ba4d00c35a04e38b068a302460e295c1d2486a7 b/fuzz/corpus/fuzz_config/4ba4d00c35a04e38b068a302460e295c1d2486a7 Binary files differnew file mode 100644 index 000000000..3d70ae0a2 --- /dev/null +++ b/fuzz/corpus/fuzz_config/4ba4d00c35a04e38b068a302460e295c1d2486a7 diff --git a/fuzz/corpus/fuzz_config/a8a8d22febf3f4abe19bf2d27e584ba13d61feb5 b/fuzz/corpus/fuzz_config/4cee68be22b7d0d401aa891c1d713a0d81ec2e2e Binary files differindex 8b4dff1fc..16bb6a156 100644 --- a/fuzz/corpus/fuzz_config/a8a8d22febf3f4abe19bf2d27e584ba13d61feb5 +++ b/fuzz/corpus/fuzz_config/4cee68be22b7d0d401aa891c1d713a0d81ec2e2e diff --git a/fuzz/corpus/fuzz_config/52837c2c4c6aa24222b75cd51517847722172adb b/fuzz/corpus/fuzz_config/52837c2c4c6aa24222b75cd51517847722172adb Binary files differdeleted file mode 100644 index 80a514701..000000000 --- a/fuzz/corpus/fuzz_config/52837c2c4c6aa24222b75cd51517847722172adb +++ /dev/null diff --git a/fuzz/corpus/fuzz_config/c250a3cf6bf0cf8e0af836532e7b79ea917c10e4 b/fuzz/corpus/fuzz_config/579120e2b849fa886d3e00e85da1aadaf012a530 Binary files differindex 8a9df65b2..ad41b8e05 100644 --- a/fuzz/corpus/fuzz_config/c250a3cf6bf0cf8e0af836532e7b79ea917c10e4 +++ b/fuzz/corpus/fuzz_config/579120e2b849fa886d3e00e85da1aadaf012a530 diff --git a/fuzz/corpus/fuzz_config/5d526bda3b5330598d39b61062e9f9d266f80841 b/fuzz/corpus/fuzz_config/5d526bda3b5330598d39b61062e9f9d266f80841 Binary files differnew file mode 100644 index 000000000..a2b211283 --- /dev/null +++ b/fuzz/corpus/fuzz_config/5d526bda3b5330598d39b61062e9f9d266f80841 diff --git a/fuzz/corpus/fuzz_config/5e008f72d654de9bac626249dd3b621e3c40f6c2 b/fuzz/corpus/fuzz_config/5e008f72d654de9bac626249dd3b621e3c40f6c2 Binary files differnew file mode 100644 index 000000000..256a9bbeb --- /dev/null +++ b/fuzz/corpus/fuzz_config/5e008f72d654de9bac626249dd3b621e3c40f6c2 diff --git a/fuzz/corpus/fuzz_config/68f8e31473a59710033f435affdcd2f85879fce7 b/fuzz/corpus/fuzz_config/68f8e31473a59710033f435affdcd2f85879fce7 Binary files differnew file mode 100644 index 000000000..5efc68e92 --- /dev/null +++ b/fuzz/corpus/fuzz_config/68f8e31473a59710033f435affdcd2f85879fce7 diff --git a/fuzz/corpus/fuzz_config/33106851bd86bc811f47f10de9c71c2caddc61e2 b/fuzz/corpus/fuzz_config/9220903d0d0062dfc7e070c8fdc32feb954feb25 Binary files differindex ab6abf41d..8babbfb9c 100644 --- a/fuzz/corpus/fuzz_config/33106851bd86bc811f47f10de9c71c2caddc61e2 +++ b/fuzz/corpus/fuzz_config/9220903d0d0062dfc7e070c8fdc32feb954feb25 diff --git a/fuzz/corpus/fuzz_config/9e052a7a1d1f93f288978e7e313c4f324043b761 b/fuzz/corpus/fuzz_config/9e052a7a1d1f93f288978e7e313c4f324043b761 Binary files differdeleted file mode 100644 index 1491c64d4..000000000 --- a/fuzz/corpus/fuzz_config/9e052a7a1d1f93f288978e7e313c4f324043b761 +++ /dev/null diff --git a/fuzz/corpus/fuzz_config/c4e100d34b144a24af0c38f88db0dccba57381a2 b/fuzz/corpus/fuzz_config/c4e100d34b144a24af0c38f88db0dccba57381a2 Binary files differnew file mode 100644 index 000000000..43717d5f5 --- /dev/null +++ b/fuzz/corpus/fuzz_config/c4e100d34b144a24af0c38f88db0dccba57381a2 diff --git a/fuzz/corpus/fuzz_config/8dfa9cd6f01cb29ccf987a4a33ecac5ff9125c82 b/fuzz/corpus/fuzz_config/ccd00f1345fccd5b8435039f30fc6f27639029db Binary files differindex 061542d3c..81d59ad0c 100644 --- a/fuzz/corpus/fuzz_config/8dfa9cd6f01cb29ccf987a4a33ecac5ff9125c82 +++ b/fuzz/corpus/fuzz_config/ccd00f1345fccd5b8435039f30fc6f27639029db diff --git a/fuzz/corpus/fuzz_config/d4137e2962c892542ba841967f12bdca05eeed87 b/fuzz/corpus/fuzz_config/d4137e2962c892542ba841967f12bdca05eeed87 Binary files differdeleted file mode 100644 index 668337a67..000000000 --- a/fuzz/corpus/fuzz_config/d4137e2962c892542ba841967f12bdca05eeed87 +++ /dev/null diff --git a/fuzz/corpus/fuzz_config/d53736074744a1979226d90efbb79924941c06e0 b/fuzz/corpus/fuzz_config/d53736074744a1979226d90efbb79924941c06e0 Binary files differdeleted file mode 100644 index 2129831b7..000000000 --- a/fuzz/corpus/fuzz_config/d53736074744a1979226d90efbb79924941c06e0 +++ /dev/null diff --git a/fuzz/corpus/fuzz_config/d874a185c26c951bf84d9a7d69e00ffb56b0e563 b/fuzz/corpus/fuzz_config/d874a185c26c951bf84d9a7d69e00ffb56b0e563 Binary files differnew file mode 100644 index 000000000..7b92ee675 --- /dev/null +++ b/fuzz/corpus/fuzz_config/d874a185c26c951bf84d9a7d69e00ffb56b0e563 diff --git a/fuzz/corpus/fuzz_ds_libcache/042f4f0cc3101588368dba98dbf9e83e5422dbb5 b/fuzz/corpus/fuzz_ds_libcache/042f4f0cc3101588368dba98dbf9e83e5422dbb5 Binary files differnew file mode 100644 index 000000000..30edd9ece --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/042f4f0cc3101588368dba98dbf9e83e5422dbb5 diff --git a/fuzz/corpus/fuzz_ds_libcache/1195eeb4e77fc5d9e98923031e5f2514b2c7f11e b/fuzz/corpus/fuzz_ds_libcache/1195eeb4e77fc5d9e98923031e5f2514b2c7f11e Binary files differnew file mode 100644 index 000000000..594b2a8dc --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/1195eeb4e77fc5d9e98923031e5f2514b2c7f11e diff --git a/fuzz/corpus/fuzz_ds_libcache/193fb5a96d5140d3b2b7e0ed6515dfd874db55c0 b/fuzz/corpus/fuzz_ds_libcache/193fb5a96d5140d3b2b7e0ed6515dfd874db55c0 Binary files differnew file mode 100644 index 000000000..d23792dbb --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/193fb5a96d5140d3b2b7e0ed6515dfd874db55c0 diff --git a/fuzz/corpus/fuzz_ds_libcache/2d24f27e806d3cd6247645c98c00088b0560df11 b/fuzz/corpus/fuzz_ds_libcache/2d24f27e806d3cd6247645c98c00088b0560df11 Binary files differnew file mode 100644 index 000000000..ad647fec4 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/2d24f27e806d3cd6247645c98c00088b0560df11 diff --git a/fuzz/corpus/fuzz_ds_libcache/2e07c4757014206f6f6e88a2ba355c4fba605e2b b/fuzz/corpus/fuzz_ds_libcache/2e07c4757014206f6f6e88a2ba355c4fba605e2b Binary files differnew file mode 100644 index 000000000..8c410290b --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/2e07c4757014206f6f6e88a2ba355c4fba605e2b diff --git a/fuzz/corpus/fuzz_ds_libcache/30636fd8ee97c7e63447fcd8eb87673db8bffdd7 b/fuzz/corpus/fuzz_ds_libcache/30636fd8ee97c7e63447fcd8eb87673db8bffdd7 Binary files differnew file mode 100644 index 000000000..b103d6ab4 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/30636fd8ee97c7e63447fcd8eb87673db8bffdd7 diff --git a/fuzz/corpus/fuzz_ds_libcache/35f711e75ad500d3c3b2bee6bf6002d7fe904504 b/fuzz/corpus/fuzz_ds_libcache/35f711e75ad500d3c3b2bee6bf6002d7fe904504 Binary files differnew file mode 100644 index 000000000..58b90fc85 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/35f711e75ad500d3c3b2bee6bf6002d7fe904504 diff --git a/fuzz/corpus/fuzz_ds_libcache/430602cc8cbe862d7e0ea35b0c5bbd8f6aa04c25 b/fuzz/corpus/fuzz_ds_libcache/430602cc8cbe862d7e0ea35b0c5bbd8f6aa04c25 Binary files differnew file mode 100644 index 000000000..b23840072 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/430602cc8cbe862d7e0ea35b0c5bbd8f6aa04c25 diff --git a/fuzz/corpus/fuzz_ds_libcache/437dbd946ccefac6241585389edfcea153befb47 b/fuzz/corpus/fuzz_ds_libcache/437dbd946ccefac6241585389edfcea153befb47 Binary files differnew file mode 100644 index 000000000..908066a77 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/437dbd946ccefac6241585389edfcea153befb47 diff --git a/fuzz/corpus/fuzz_ds_libcache/439afc909f7db6fbd9cbab21287f5787b5b74df0 b/fuzz/corpus/fuzz_ds_libcache/439afc909f7db6fbd9cbab21287f5787b5b74df0 Binary files differnew file mode 100644 index 000000000..e920d92e6 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/439afc909f7db6fbd9cbab21287f5787b5b74df0 diff --git a/fuzz/corpus/fuzz_ds_libcache/4759489e6df5f544ccf8d11db20f86492da28f95 b/fuzz/corpus/fuzz_ds_libcache/4759489e6df5f544ccf8d11db20f86492da28f95 Binary files differnew file mode 100644 index 000000000..2d6dcac14 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/4759489e6df5f544ccf8d11db20f86492da28f95 diff --git a/fuzz/corpus/fuzz_ds_libcache/47f4f68c6df06e75b0cb95b7eaad6442867c2b5f b/fuzz/corpus/fuzz_ds_libcache/47f4f68c6df06e75b0cb95b7eaad6442867c2b5f Binary files differnew file mode 100644 index 000000000..5a0e17b7a --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/47f4f68c6df06e75b0cb95b7eaad6442867c2b5f diff --git a/fuzz/corpus/fuzz_ds_libcache/58fa06dad3fc0bfe2c003be9d4aeb20f0c98e094 b/fuzz/corpus/fuzz_ds_libcache/58fa06dad3fc0bfe2c003be9d4aeb20f0c98e094 Binary files differnew file mode 100644 index 000000000..efc0fa2c5 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/58fa06dad3fc0bfe2c003be9d4aeb20f0c98e094 diff --git a/fuzz/corpus/fuzz_ds_libcache/5dab7c5cf45eb3009d4598c699d7e63759d1c044 b/fuzz/corpus/fuzz_ds_libcache/5dab7c5cf45eb3009d4598c699d7e63759d1c044 Binary files differnew file mode 100644 index 000000000..89591c330 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/5dab7c5cf45eb3009d4598c699d7e63759d1c044 diff --git a/fuzz/corpus/fuzz_ds_libcache/64f77a7541af6918e635060e1c9f35aa445be232 b/fuzz/corpus/fuzz_ds_libcache/64f77a7541af6918e635060e1c9f35aa445be232 Binary files differnew file mode 100644 index 000000000..a7b41ccc7 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/64f77a7541af6918e635060e1c9f35aa445be232 diff --git a/fuzz/corpus/fuzz_ds_libcache/6ac48f313a6df6a4bf2c60e11e388efb131d5019 b/fuzz/corpus/fuzz_ds_libcache/6ac48f313a6df6a4bf2c60e11e388efb131d5019 Binary files differnew file mode 100644 index 000000000..d35c3590e --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/6ac48f313a6df6a4bf2c60e11e388efb131d5019 diff --git a/fuzz/corpus/fuzz_ds_libcache/6d6fe95d7988b044fdeabaa1a4f7bf37def86f84 b/fuzz/corpus/fuzz_ds_libcache/6d6fe95d7988b044fdeabaa1a4f7bf37def86f84 Binary files differnew file mode 100644 index 000000000..a18b2b5dc --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/6d6fe95d7988b044fdeabaa1a4f7bf37def86f84 diff --git a/fuzz/corpus/fuzz_ds_libcache/6dcc541470d09c89570f026647d821c00709cd7a b/fuzz/corpus/fuzz_ds_libcache/6dcc541470d09c89570f026647d821c00709cd7a Binary files differnew file mode 100644 index 000000000..81a55633f --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/6dcc541470d09c89570f026647d821c00709cd7a diff --git a/fuzz/corpus/fuzz_ds_libcache/6e1429b50784bd15641f7c44797a6168fe7e2da8 b/fuzz/corpus/fuzz_ds_libcache/6e1429b50784bd15641f7c44797a6168fe7e2da8 Binary files differnew file mode 100644 index 000000000..8f75ebd78 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/6e1429b50784bd15641f7c44797a6168fe7e2da8 diff --git a/fuzz/corpus/fuzz_ds_libcache/7001cc4fe58f171dc569d2d7ba13f5ec80c49aa5 b/fuzz/corpus/fuzz_ds_libcache/7001cc4fe58f171dc569d2d7ba13f5ec80c49aa5 Binary files differnew file mode 100644 index 000000000..4d2583635 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/7001cc4fe58f171dc569d2d7ba13f5ec80c49aa5 diff --git a/fuzz/corpus/fuzz_ds_libcache/7a856ff04e08b949f0ada3765dc766cb3e88ca9e b/fuzz/corpus/fuzz_ds_libcache/7a856ff04e08b949f0ada3765dc766cb3e88ca9e Binary files differnew file mode 100644 index 000000000..20051650a --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/7a856ff04e08b949f0ada3765dc766cb3e88ca9e diff --git a/fuzz/corpus/fuzz_ds_libcache/7d2f1ef5f3a0ec3e17a54f944f1747d1c4ed6f56 b/fuzz/corpus/fuzz_ds_libcache/7d2f1ef5f3a0ec3e17a54f944f1747d1c4ed6f56 Binary files differnew file mode 100644 index 000000000..2ea5dd37c --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/7d2f1ef5f3a0ec3e17a54f944f1747d1c4ed6f56 diff --git a/fuzz/corpus/fuzz_ds_libcache/8400bb7d51ebbc8951bb5eba1c4632b22adb27e0 b/fuzz/corpus/fuzz_ds_libcache/8400bb7d51ebbc8951bb5eba1c4632b22adb27e0 Binary files differnew file mode 100644 index 000000000..9bb5e8613 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/8400bb7d51ebbc8951bb5eba1c4632b22adb27e0 diff --git a/fuzz/corpus/fuzz_ds_libcache/8778f2315cb83c07caf86e15613364cea9b7a7de b/fuzz/corpus/fuzz_ds_libcache/8778f2315cb83c07caf86e15613364cea9b7a7de Binary files differnew file mode 100644 index 000000000..d29b72d62 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/8778f2315cb83c07caf86e15613364cea9b7a7de diff --git a/fuzz/corpus/fuzz_ds_libcache/89d9a61ce34553dcc76128aceadf3868cc568523 b/fuzz/corpus/fuzz_ds_libcache/89d9a61ce34553dcc76128aceadf3868cc568523 Binary files differnew file mode 100644 index 000000000..e544ac808 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/89d9a61ce34553dcc76128aceadf3868cc568523 diff --git a/fuzz/corpus/fuzz_ds_libcache/8af1119b2f19d2689a0f9291ad2f7530b657661e b/fuzz/corpus/fuzz_ds_libcache/8af1119b2f19d2689a0f9291ad2f7530b657661e Binary files differnew file mode 100644 index 000000000..081054586 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/8af1119b2f19d2689a0f9291ad2f7530b657661e diff --git a/fuzz/corpus/fuzz_ds_libcache/8bb7c60c5df4ed28e3344e00abd5533e94aabb44 b/fuzz/corpus/fuzz_ds_libcache/8bb7c60c5df4ed28e3344e00abd5533e94aabb44 Binary files differnew file mode 100644 index 000000000..dd2e624c2 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/8bb7c60c5df4ed28e3344e00abd5533e94aabb44 diff --git a/fuzz/corpus/fuzz_ds_libcache/959da56c4aa24b9de1967eeb704c338757bc8375 b/fuzz/corpus/fuzz_ds_libcache/959da56c4aa24b9de1967eeb704c338757bc8375 Binary files differnew file mode 100644 index 000000000..7bba71cfc --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/959da56c4aa24b9de1967eeb704c338757bc8375 diff --git a/fuzz/corpus/fuzz_ds_libcache/9919fa67f71d64fe656b86a01785b69ad6a279c3 b/fuzz/corpus/fuzz_ds_libcache/9919fa67f71d64fe656b86a01785b69ad6a279c3 Binary files differnew file mode 100644 index 000000000..d4bdb8676 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/9919fa67f71d64fe656b86a01785b69ad6a279c3 diff --git a/fuzz/corpus/fuzz_ds_libcache/9d685ce7ee10169821ece3ab80a402e4ca26bcbf b/fuzz/corpus/fuzz_ds_libcache/9d685ce7ee10169821ece3ab80a402e4ca26bcbf Binary files differnew file mode 100644 index 000000000..638ae8c6b --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/9d685ce7ee10169821ece3ab80a402e4ca26bcbf diff --git a/fuzz/corpus/fuzz_ds_libcache/a68afdc36485e3328cf3d734763ac7e31d8ce271 b/fuzz/corpus/fuzz_ds_libcache/a68afdc36485e3328cf3d734763ac7e31d8ce271 Binary files differnew file mode 100644 index 000000000..8700c83ef --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/a68afdc36485e3328cf3d734763ac7e31d8ce271 diff --git a/fuzz/corpus/fuzz_ds_libcache/a89e2c5c0a09a9e9f0372b17b383a1afb88dea5a b/fuzz/corpus/fuzz_ds_libcache/a89e2c5c0a09a9e9f0372b17b383a1afb88dea5a Binary files differnew file mode 100644 index 000000000..6e44f250c --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/a89e2c5c0a09a9e9f0372b17b383a1afb88dea5a diff --git a/fuzz/corpus/fuzz_ds_libcache/a8cfc4b6af41a3c9fb1d642ef1d8c2a9794a77bf b/fuzz/corpus/fuzz_ds_libcache/a8cfc4b6af41a3c9fb1d642ef1d8c2a9794a77bf Binary files differnew file mode 100644 index 000000000..88494ea4f --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/a8cfc4b6af41a3c9fb1d642ef1d8c2a9794a77bf diff --git a/fuzz/corpus/fuzz_ds_libcache/a9719df1432452970b16eb319b5b328fc42a2266 b/fuzz/corpus/fuzz_ds_libcache/a9719df1432452970b16eb319b5b328fc42a2266 Binary files differnew file mode 100644 index 000000000..5bea9bd00 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/a9719df1432452970b16eb319b5b328fc42a2266 diff --git a/fuzz/corpus/fuzz_ds_libcache/aac9f1b7d6ae3cb90e2760fb76166b09fcfbce4b b/fuzz/corpus/fuzz_ds_libcache/aac9f1b7d6ae3cb90e2760fb76166b09fcfbce4b Binary files differnew file mode 100644 index 000000000..b98ed636c --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/aac9f1b7d6ae3cb90e2760fb76166b09fcfbce4b diff --git a/fuzz/corpus/fuzz_ds_libcache/ada1bdfc9721615f5fc3812cc4ea92c176393037 b/fuzz/corpus/fuzz_ds_libcache/ada1bdfc9721615f5fc3812cc4ea92c176393037 Binary files differnew file mode 100644 index 000000000..a981f2ba8 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/ada1bdfc9721615f5fc3812cc4ea92c176393037 diff --git a/fuzz/corpus/fuzz_ds_libcache/b037d479aafa2eedf46a8a0aefa9e4cdd01c1853 b/fuzz/corpus/fuzz_ds_libcache/b037d479aafa2eedf46a8a0aefa9e4cdd01c1853 Binary files differnew file mode 100644 index 000000000..220f370e2 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/b037d479aafa2eedf46a8a0aefa9e4cdd01c1853 diff --git a/fuzz/corpus/fuzz_ds_libcache/b1b941f3c1a9f7635599665ad5a517d0cefc1fa5 b/fuzz/corpus/fuzz_ds_libcache/b1b941f3c1a9f7635599665ad5a517d0cefc1fa5 Binary files differnew file mode 100644 index 000000000..01defa2a3 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/b1b941f3c1a9f7635599665ad5a517d0cefc1fa5 diff --git a/fuzz/corpus/fuzz_ds_libcache/b5385caa5fbd90b326ecf22c51a7b1db4affeaf7 b/fuzz/corpus/fuzz_ds_libcache/b5385caa5fbd90b326ecf22c51a7b1db4affeaf7 Binary files differnew file mode 100644 index 000000000..2f518be4b --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/b5385caa5fbd90b326ecf22c51a7b1db4affeaf7 diff --git a/fuzz/corpus/fuzz_ds_libcache/bb5055bb0dc17c1a174c4aac3a4af0a5f50453ae b/fuzz/corpus/fuzz_ds_libcache/bb5055bb0dc17c1a174c4aac3a4af0a5f50453ae Binary files differnew file mode 100644 index 000000000..a2e6d75a9 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/bb5055bb0dc17c1a174c4aac3a4af0a5f50453ae diff --git a/fuzz/corpus/fuzz_ds_libcache/c15a1ae161422b9fdce9672604d63e78b5a94e9d b/fuzz/corpus/fuzz_ds_libcache/c15a1ae161422b9fdce9672604d63e78b5a94e9d Binary files differnew file mode 100644 index 000000000..88eee758c --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/c15a1ae161422b9fdce9672604d63e78b5a94e9d diff --git a/fuzz/corpus/fuzz_ds_libcache/c2c299509a4e90b969f896f23e6cb08dd74ecbee b/fuzz/corpus/fuzz_ds_libcache/c2c299509a4e90b969f896f23e6cb08dd74ecbee Binary files differnew file mode 100644 index 000000000..2db9b2545 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/c2c299509a4e90b969f896f23e6cb08dd74ecbee diff --git a/fuzz/corpus/fuzz_ds_libcache/c6ba417c891b2ca29739e7149674e8c46f915d67 b/fuzz/corpus/fuzz_ds_libcache/c6ba417c891b2ca29739e7149674e8c46f915d67 Binary files differnew file mode 100644 index 000000000..727448004 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/c6ba417c891b2ca29739e7149674e8c46f915d67 diff --git a/fuzz/corpus/fuzz_ds_libcache/d2f13543462b2edbac303949218e786f569b92db b/fuzz/corpus/fuzz_ds_libcache/d2f13543462b2edbac303949218e786f569b92db Binary files differnew file mode 100644 index 000000000..5708960ff --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/d2f13543462b2edbac303949218e786f569b92db diff --git a/fuzz/corpus/fuzz_ds_libcache/db40d7abd8b1ccdf7a68b24c2c2ed35a0401505e b/fuzz/corpus/fuzz_ds_libcache/db40d7abd8b1ccdf7a68b24c2c2ed35a0401505e Binary files differnew file mode 100644 index 000000000..49ea02036 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/db40d7abd8b1ccdf7a68b24c2c2ed35a0401505e diff --git a/fuzz/corpus/fuzz_ds_libcache/dc371e73487929be909a7531c7d14822dfd22cb3 b/fuzz/corpus/fuzz_ds_libcache/dc371e73487929be909a7531c7d14822dfd22cb3 Binary files differnew file mode 100644 index 000000000..cfa151a46 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/dc371e73487929be909a7531c7d14822dfd22cb3 diff --git a/fuzz/corpus/fuzz_ds_libcache/dd50425b220f157dc100fae7f7c68a71bb7250bd b/fuzz/corpus/fuzz_ds_libcache/dd50425b220f157dc100fae7f7c68a71bb7250bd Binary files differnew file mode 100644 index 000000000..95d429c31 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/dd50425b220f157dc100fae7f7c68a71bb7250bd diff --git a/fuzz/corpus/fuzz_ds_libcache/df03b2171ae3e1801e140f22f71db7d5b4b3c55a b/fuzz/corpus/fuzz_ds_libcache/df03b2171ae3e1801e140f22f71db7d5b4b3c55a Binary files differnew file mode 100644 index 000000000..2fd82b4c4 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/df03b2171ae3e1801e140f22f71db7d5b4b3c55a diff --git a/fuzz/corpus/fuzz_ds_libcache/e0b52af1dcb172594da0afd2f126beb2ab6bdc4a b/fuzz/corpus/fuzz_ds_libcache/e0b52af1dcb172594da0afd2f126beb2ab6bdc4a Binary files differnew file mode 100644 index 000000000..e8f944bf0 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/e0b52af1dcb172594da0afd2f126beb2ab6bdc4a diff --git a/fuzz/corpus/fuzz_ds_libcache/e0c22f5deaea2aabbf8c1e28dd0d40290b415cf3 b/fuzz/corpus/fuzz_ds_libcache/e0c22f5deaea2aabbf8c1e28dd0d40290b415cf3 Binary files differnew file mode 100644 index 000000000..37321fc5c --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/e0c22f5deaea2aabbf8c1e28dd0d40290b415cf3 diff --git a/fuzz/corpus/fuzz_ds_libcache/e3722d8da58d0405ca0c97d6355a238bdd990c73 b/fuzz/corpus/fuzz_ds_libcache/e3722d8da58d0405ca0c97d6355a238bdd990c73 Binary files differnew file mode 100644 index 000000000..13d82e23e --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/e3722d8da58d0405ca0c97d6355a238bdd990c73 diff --git a/fuzz/corpus/fuzz_ds_libcache/e57e36bb120012b860b5c36f618e8013dd5c5897 b/fuzz/corpus/fuzz_ds_libcache/e57e36bb120012b860b5c36f618e8013dd5c5897 Binary files differnew file mode 100644 index 000000000..d39549689 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/e57e36bb120012b860b5c36f618e8013dd5c5897 diff --git a/fuzz/corpus/fuzz_ds_libcache/e7a8b34fe6322d56fb4c6091958e5c829bef947e b/fuzz/corpus/fuzz_ds_libcache/e7a8b34fe6322d56fb4c6091958e5c829bef947e Binary files differnew file mode 100644 index 000000000..41d6434e0 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/e7a8b34fe6322d56fb4c6091958e5c829bef947e diff --git a/fuzz/corpus/fuzz_ds_libcache/e959ef29ac238ffbdf20b01f8cdea3160781f35e b/fuzz/corpus/fuzz_ds_libcache/e959ef29ac238ffbdf20b01f8cdea3160781f35e Binary files differnew file mode 100644 index 000000000..31aa9f24c --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/e959ef29ac238ffbdf20b01f8cdea3160781f35e diff --git a/fuzz/corpus/fuzz_ds_libcache/ea2d6b2e65bfdb6e5170697309d66543bb15f3f8 b/fuzz/corpus/fuzz_ds_libcache/ea2d6b2e65bfdb6e5170697309d66543bb15f3f8 Binary files differnew file mode 100644 index 000000000..2d6e284db --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/ea2d6b2e65bfdb6e5170697309d66543bb15f3f8 diff --git a/fuzz/corpus/fuzz_ds_libcache/f7c350a374e15a0aa9b7f0f53ea52f5cc3bb9d1a b/fuzz/corpus/fuzz_ds_libcache/f7c350a374e15a0aa9b7f0f53ea52f5cc3bb9d1a Binary files differnew file mode 100644 index 000000000..3726089c9 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/f7c350a374e15a0aa9b7f0f53ea52f5cc3bb9d1a diff --git a/fuzz/corpus/fuzz_ds_libcache/fca5ed57aa43ca3ed700dd7603af6bd90af4d399 b/fuzz/corpus/fuzz_ds_libcache/fca5ed57aa43ca3ed700dd7603af6bd90af4d399 Binary files differnew file mode 100644 index 000000000..f25414be0 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_libcache/fca5ed57aa43ca3ed700dd7603af6bd90af4d399 diff --git a/fuzz/corpus/fuzz_ds_tree/01b014b146ea485e9c28e58ec5d0f3810186a81e b/fuzz/corpus/fuzz_ds_tree/01b014b146ea485e9c28e58ec5d0f3810186a81e Binary files differnew file mode 100644 index 000000000..9bb1c1d20 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/01b014b146ea485e9c28e58ec5d0f3810186a81e diff --git a/fuzz/corpus/fuzz_ds_tree/021f72157ffa4da59637382fd9ee14780ef6986d b/fuzz/corpus/fuzz_ds_tree/021f72157ffa4da59637382fd9ee14780ef6986d Binary files differnew file mode 100644 index 000000000..f0b8c0704 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/021f72157ffa4da59637382fd9ee14780ef6986d diff --git a/fuzz/corpus/fuzz_ds_tree/0348a0c1cd260fc706fde509c9737d02f7808757 b/fuzz/corpus/fuzz_ds_tree/0348a0c1cd260fc706fde509c9737d02f7808757 Binary files differnew file mode 100644 index 000000000..712f952c0 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/0348a0c1cd260fc706fde509c9737d02f7808757 diff --git a/fuzz/corpus/fuzz_ds_tree/03fcea60dff1be565e2a9ebccca02296fb24ced0 b/fuzz/corpus/fuzz_ds_tree/03fcea60dff1be565e2a9ebccca02296fb24ced0 Binary files differnew file mode 100644 index 000000000..1f5dbf8b3 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/03fcea60dff1be565e2a9ebccca02296fb24ced0 diff --git a/fuzz/corpus/fuzz_ds_tree/0410c4f13abd2ac0be3d47da076620fbf54e9e06 b/fuzz/corpus/fuzz_ds_tree/0410c4f13abd2ac0be3d47da076620fbf54e9e06 Binary files differnew file mode 100644 index 000000000..808beb78c --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/0410c4f13abd2ac0be3d47da076620fbf54e9e06 diff --git a/fuzz/corpus/fuzz_ds_tree/05f2bf1721c39d6be215f3400f45f07d7c16d7c5 b/fuzz/corpus/fuzz_ds_tree/05f2bf1721c39d6be215f3400f45f07d7c16d7c5 Binary files differnew file mode 100644 index 000000000..5ff45aec8 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/05f2bf1721c39d6be215f3400f45f07d7c16d7c5 diff --git a/fuzz/corpus/fuzz_ds_tree/0696e1fef974d3020398c0645c7f5dd946898729 b/fuzz/corpus/fuzz_ds_tree/0696e1fef974d3020398c0645c7f5dd946898729 Binary files differnew file mode 100644 index 000000000..73ebd2a4d --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/0696e1fef974d3020398c0645c7f5dd946898729 diff --git a/fuzz/corpus/fuzz_ds_tree/08c3863b148d3c71fcb4c04357b4f907f78ba3b0 b/fuzz/corpus/fuzz_ds_tree/08c3863b148d3c71fcb4c04357b4f907f78ba3b0 Binary files differnew file mode 100644 index 000000000..b8ade60af --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/08c3863b148d3c71fcb4c04357b4f907f78ba3b0 diff --git a/fuzz/corpus/fuzz_ds_tree/09decc3fe52ee920308448b775e51270d0799634 b/fuzz/corpus/fuzz_ds_tree/09decc3fe52ee920308448b775e51270d0799634 Binary files differnew file mode 100644 index 000000000..51756ff8e --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/09decc3fe52ee920308448b775e51270d0799634 diff --git a/fuzz/corpus/fuzz_ds_tree/0b19e4d2c5e4a46e34059098f069acf7f76cfcea b/fuzz/corpus/fuzz_ds_tree/0b19e4d2c5e4a46e34059098f069acf7f76cfcea Binary files differnew file mode 100644 index 000000000..d116787a1 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/0b19e4d2c5e4a46e34059098f069acf7f76cfcea diff --git a/fuzz/corpus/fuzz_ds_tree/198ae6bac21ab5be28e5fc511779419494c9fb99 b/fuzz/corpus/fuzz_ds_tree/198ae6bac21ab5be28e5fc511779419494c9fb99 Binary files differnew file mode 100644 index 000000000..b19788458 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/198ae6bac21ab5be28e5fc511779419494c9fb99 diff --git a/fuzz/corpus/fuzz_ds_tree/1ce15b6859d8d0d4b5254dcbb4981252c510fa9f b/fuzz/corpus/fuzz_ds_tree/1ce15b6859d8d0d4b5254dcbb4981252c510fa9f Binary files differnew file mode 100644 index 000000000..877f89b7c --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/1ce15b6859d8d0d4b5254dcbb4981252c510fa9f diff --git a/fuzz/corpus/fuzz_ds_tree/20c7e487a03376e9aee47466a79aa92ee242160c b/fuzz/corpus/fuzz_ds_tree/20c7e487a03376e9aee47466a79aa92ee242160c Binary files differnew file mode 100644 index 000000000..dd7b33346 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/20c7e487a03376e9aee47466a79aa92ee242160c diff --git a/fuzz/corpus/fuzz_ds_tree/241b26ca01fa5bbb08b23913607309f5063017bd b/fuzz/corpus/fuzz_ds_tree/241b26ca01fa5bbb08b23913607309f5063017bd Binary files differnew file mode 100644 index 000000000..e3755a3e9 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/241b26ca01fa5bbb08b23913607309f5063017bd diff --git a/fuzz/corpus/fuzz_ds_tree/24cf5c21b413b0e45721eb80edc898cf6e5f95dd b/fuzz/corpus/fuzz_ds_tree/24cf5c21b413b0e45721eb80edc898cf6e5f95dd Binary files differnew file mode 100644 index 000000000..ad5333604 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/24cf5c21b413b0e45721eb80edc898cf6e5f95dd diff --git a/fuzz/corpus/fuzz_ds_tree/27bb822705fabbf14078bef7ed2d0433d82fdad1 b/fuzz/corpus/fuzz_ds_tree/27bb822705fabbf14078bef7ed2d0433d82fdad1 Binary files differnew file mode 100644 index 000000000..31803b90c --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/27bb822705fabbf14078bef7ed2d0433d82fdad1 diff --git a/fuzz/corpus/fuzz_ds_tree/29ffc26a0ce83f654710b5de2a597507fc5729dc b/fuzz/corpus/fuzz_ds_tree/29ffc26a0ce83f654710b5de2a597507fc5729dc Binary files differnew file mode 100644 index 000000000..5b7ea38a3 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/29ffc26a0ce83f654710b5de2a597507fc5729dc diff --git a/fuzz/corpus/fuzz_ds_tree/2a0a2417d7a84b25f766e86673e47ec54fb00cbe b/fuzz/corpus/fuzz_ds_tree/2a0a2417d7a84b25f766e86673e47ec54fb00cbe Binary files differnew file mode 100644 index 000000000..33b7a0be7 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/2a0a2417d7a84b25f766e86673e47ec54fb00cbe diff --git a/fuzz/corpus/fuzz_ds_tree/2cafac567b408f64684f253a5b7b9a4b2e59568b b/fuzz/corpus/fuzz_ds_tree/2cafac567b408f64684f253a5b7b9a4b2e59568b Binary files differnew file mode 100644 index 000000000..e449db517 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/2cafac567b408f64684f253a5b7b9a4b2e59568b diff --git a/fuzz/corpus/fuzz_ds_tree/33211be3cf6ed2000eb1d2c75adcc855ed33b8e4 b/fuzz/corpus/fuzz_ds_tree/33211be3cf6ed2000eb1d2c75adcc855ed33b8e4 Binary files differnew file mode 100644 index 000000000..2772017dd --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/33211be3cf6ed2000eb1d2c75adcc855ed33b8e4 diff --git a/fuzz/corpus/fuzz_ds_tree/3a74d9d9143e2f5df4ae9c51d4ee3e6cce73d4cf b/fuzz/corpus/fuzz_ds_tree/3a74d9d9143e2f5df4ae9c51d4ee3e6cce73d4cf Binary files differnew file mode 100644 index 000000000..1eea85452 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/3a74d9d9143e2f5df4ae9c51d4ee3e6cce73d4cf diff --git a/fuzz/corpus/fuzz_ds_tree/3caf90a302b81895258b6a355d4a91a6c07cb332 b/fuzz/corpus/fuzz_ds_tree/3caf90a302b81895258b6a355d4a91a6c07cb332 Binary files differnew file mode 100644 index 000000000..dbedbc825 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/3caf90a302b81895258b6a355d4a91a6c07cb332 diff --git a/fuzz/corpus/fuzz_ds_tree/445082741fc8b6b486a198c23d86b885e6d14ce7 b/fuzz/corpus/fuzz_ds_tree/445082741fc8b6b486a198c23d86b885e6d14ce7 Binary files differnew file mode 100644 index 000000000..2185b2d0f --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/445082741fc8b6b486a198c23d86b885e6d14ce7 diff --git a/fuzz/corpus/fuzz_ds_tree/4978959b1a5996c384acf6a9bd14245625b66d46 b/fuzz/corpus/fuzz_ds_tree/4978959b1a5996c384acf6a9bd14245625b66d46 Binary files differnew file mode 100644 index 000000000..092798ccf --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/4978959b1a5996c384acf6a9bd14245625b66d46 diff --git a/fuzz/corpus/fuzz_ds_tree/4b5604ce8974b23a19948af1185f682c1e1ae8c1 b/fuzz/corpus/fuzz_ds_tree/4b5604ce8974b23a19948af1185f682c1e1ae8c1 Binary files differnew file mode 100644 index 000000000..dec299649 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/4b5604ce8974b23a19948af1185f682c1e1ae8c1 diff --git a/fuzz/corpus/fuzz_ds_tree/51b2a0ef859f67c0dca37efea91b2a2e4ddc520c b/fuzz/corpus/fuzz_ds_tree/51b2a0ef859f67c0dca37efea91b2a2e4ddc520c Binary files differnew file mode 100644 index 000000000..baaec0b68 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/51b2a0ef859f67c0dca37efea91b2a2e4ddc520c diff --git a/fuzz/corpus/fuzz_ds_tree/546c3bd16ec1d25eac5f1807b95bf57632a0542f b/fuzz/corpus/fuzz_ds_tree/546c3bd16ec1d25eac5f1807b95bf57632a0542f Binary files differnew file mode 100644 index 000000000..7d88ad45a --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/546c3bd16ec1d25eac5f1807b95bf57632a0542f diff --git a/fuzz/corpus/fuzz_ds_tree/583d48c2482fd1679a98c1748b31d07a87f06b55 b/fuzz/corpus/fuzz_ds_tree/583d48c2482fd1679a98c1748b31d07a87f06b55 Binary files differnew file mode 100644 index 000000000..7b78eadd3 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/583d48c2482fd1679a98c1748b31d07a87f06b55 diff --git a/fuzz/corpus/fuzz_ds_tree/591bd120f211dcffd75a4ac0529b847ed9945f57 b/fuzz/corpus/fuzz_ds_tree/591bd120f211dcffd75a4ac0529b847ed9945f57 Binary files differnew file mode 100644 index 000000000..6d59d9f09 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/591bd120f211dcffd75a4ac0529b847ed9945f57 diff --git a/fuzz/corpus/fuzz_ds_tree/5ee209f4deac4b64ede9a037ad33d271421a5146 b/fuzz/corpus/fuzz_ds_tree/5ee209f4deac4b64ede9a037ad33d271421a5146 Binary files differnew file mode 100644 index 000000000..4072369c8 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/5ee209f4deac4b64ede9a037ad33d271421a5146 diff --git a/fuzz/corpus/fuzz_ds_tree/6b2c2e41b2ca90992d615a3a7c580c5332610bfc b/fuzz/corpus/fuzz_ds_tree/6b2c2e41b2ca90992d615a3a7c580c5332610bfc Binary files differnew file mode 100644 index 000000000..4c2458111 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/6b2c2e41b2ca90992d615a3a7c580c5332610bfc diff --git a/fuzz/corpus/fuzz_ds_tree/75232df37bc7fd2864305542cfed6d5d050394b1 b/fuzz/corpus/fuzz_ds_tree/75232df37bc7fd2864305542cfed6d5d050394b1 Binary files differnew file mode 100644 index 000000000..5f5efc103 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/75232df37bc7fd2864305542cfed6d5d050394b1 diff --git a/fuzz/corpus/fuzz_ds_tree/753305c57fbdd9c0eaf41e6abd9f74036eab4b60 b/fuzz/corpus/fuzz_ds_tree/753305c57fbdd9c0eaf41e6abd9f74036eab4b60 Binary files differnew file mode 100644 index 000000000..7b7b617d8 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/753305c57fbdd9c0eaf41e6abd9f74036eab4b60 diff --git a/fuzz/corpus/fuzz_ds_tree/78cc5b473811aa993c3b7c88ffbed05187b6cd99 b/fuzz/corpus/fuzz_ds_tree/78cc5b473811aa993c3b7c88ffbed05187b6cd99 Binary files differnew file mode 100644 index 000000000..82029a8e7 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/78cc5b473811aa993c3b7c88ffbed05187b6cd99 diff --git a/fuzz/corpus/fuzz_ds_tree/7ac6b622dbe77fef5aa9f34f7170ed199ed1fd73 b/fuzz/corpus/fuzz_ds_tree/7ac6b622dbe77fef5aa9f34f7170ed199ed1fd73 Binary files differnew file mode 100644 index 000000000..e5e340cd2 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/7ac6b622dbe77fef5aa9f34f7170ed199ed1fd73 diff --git a/fuzz/corpus/fuzz_ds_tree/7b71687d14b357cc790e7855d92829c73f1caae5 b/fuzz/corpus/fuzz_ds_tree/7b71687d14b357cc790e7855d92829c73f1caae5 Binary files differnew file mode 100644 index 000000000..926944e0f --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/7b71687d14b357cc790e7855d92829c73f1caae5 diff --git a/fuzz/corpus/fuzz_ds_tree/7cdbbf403d12e497d96caa65d454d422167053d1 b/fuzz/corpus/fuzz_ds_tree/7cdbbf403d12e497d96caa65d454d422167053d1 Binary files differnew file mode 100644 index 000000000..625e08f59 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/7cdbbf403d12e497d96caa65d454d422167053d1 diff --git a/fuzz/corpus/fuzz_ds_tree/82f4a4e8d17333226fe80f2bce8ef37d33d8a8f0 b/fuzz/corpus/fuzz_ds_tree/82f4a4e8d17333226fe80f2bce8ef37d33d8a8f0 Binary files differnew file mode 100644 index 000000000..88363b25c --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/82f4a4e8d17333226fe80f2bce8ef37d33d8a8f0 diff --git a/fuzz/corpus/fuzz_ds_tree/8586c1e00b83a070b54db1672d29c6890f23174d b/fuzz/corpus/fuzz_ds_tree/8586c1e00b83a070b54db1672d29c6890f23174d Binary files differnew file mode 100644 index 000000000..0bfa61288 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/8586c1e00b83a070b54db1672d29c6890f23174d diff --git a/fuzz/corpus/fuzz_ds_tree/8a555e581a4ed7164e311b75291d73a6a6aa25ce b/fuzz/corpus/fuzz_ds_tree/8a555e581a4ed7164e311b75291d73a6a6aa25ce Binary files differnew file mode 100644 index 000000000..f5309ab4e --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/8a555e581a4ed7164e311b75291d73a6a6aa25ce diff --git a/fuzz/corpus/fuzz_ds_tree/8b16f2f2917796d5becb502f540dbc1a77645614 b/fuzz/corpus/fuzz_ds_tree/8b16f2f2917796d5becb502f540dbc1a77645614 Binary files differnew file mode 100644 index 000000000..2581944ee --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/8b16f2f2917796d5becb502f540dbc1a77645614 diff --git a/fuzz/corpus/fuzz_ds_tree/904a157a101a0771744b115e726f45fde3eda4b8 b/fuzz/corpus/fuzz_ds_tree/904a157a101a0771744b115e726f45fde3eda4b8 Binary files differnew file mode 100644 index 000000000..41474969a --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/904a157a101a0771744b115e726f45fde3eda4b8 diff --git a/fuzz/corpus/fuzz_ds_tree/90cf625aeb7846a5e9d860a9e920afb3e8657899 b/fuzz/corpus/fuzz_ds_tree/90cf625aeb7846a5e9d860a9e920afb3e8657899 Binary files differnew file mode 100644 index 000000000..260adb925 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/90cf625aeb7846a5e9d860a9e920afb3e8657899 diff --git a/fuzz/corpus/fuzz_ds_tree/95402f0bd80b42926a317c1606747289428eeb96 b/fuzz/corpus/fuzz_ds_tree/95402f0bd80b42926a317c1606747289428eeb96 Binary files differnew file mode 100644 index 000000000..cc61b2081 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/95402f0bd80b42926a317c1606747289428eeb96 diff --git a/fuzz/corpus/fuzz_ds_tree/96793225335720b78dd4de48be03aabe8487d533 b/fuzz/corpus/fuzz_ds_tree/96793225335720b78dd4de48be03aabe8487d533 Binary files differnew file mode 100644 index 000000000..6bb677bfb --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/96793225335720b78dd4de48be03aabe8487d533 diff --git a/fuzz/corpus/fuzz_ds_tree/985be9edded73c57832ed96828f93fbcf4b7bdbc b/fuzz/corpus/fuzz_ds_tree/985be9edded73c57832ed96828f93fbcf4b7bdbc Binary files differnew file mode 100644 index 000000000..4127ea76d --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/985be9edded73c57832ed96828f93fbcf4b7bdbc diff --git a/fuzz/corpus/fuzz_ds_tree/9949825ec99cd8993cb6d3cf61b78f1daca002d9 b/fuzz/corpus/fuzz_ds_tree/9949825ec99cd8993cb6d3cf61b78f1daca002d9 Binary files differnew file mode 100644 index 000000000..076bd174c --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/9949825ec99cd8993cb6d3cf61b78f1daca002d9 diff --git a/fuzz/corpus/fuzz_ds_tree/9b01aca36cc45c533cc9b8a505af7a1696d622ec b/fuzz/corpus/fuzz_ds_tree/9b01aca36cc45c533cc9b8a505af7a1696d622ec Binary files differnew file mode 100644 index 000000000..791ebbdea --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/9b01aca36cc45c533cc9b8a505af7a1696d622ec diff --git a/fuzz/corpus/fuzz_ds_tree/a17482d70812b76794e2a68373fe1aacb70bb983 b/fuzz/corpus/fuzz_ds_tree/a17482d70812b76794e2a68373fe1aacb70bb983 Binary files differnew file mode 100644 index 000000000..2bf3e180e --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/a17482d70812b76794e2a68373fe1aacb70bb983 diff --git a/fuzz/corpus/fuzz_ds_tree/a1c03aa549f9e6aef57b8f5503ec4b4c1329c7ba b/fuzz/corpus/fuzz_ds_tree/a1c03aa549f9e6aef57b8f5503ec4b4c1329c7ba Binary files differnew file mode 100644 index 000000000..ed6f26190 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/a1c03aa549f9e6aef57b8f5503ec4b4c1329c7ba diff --git a/fuzz/corpus/fuzz_ds_tree/a80d8aae221736aa612f8a82b202f5fce0eb9500 b/fuzz/corpus/fuzz_ds_tree/a80d8aae221736aa612f8a82b202f5fce0eb9500 Binary files differnew file mode 100644 index 000000000..0d98f2019 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/a80d8aae221736aa612f8a82b202f5fce0eb9500 diff --git a/fuzz/corpus/fuzz_ds_tree/aa5f590b2f8ae90f488320a5c0ce1664b6250141 b/fuzz/corpus/fuzz_ds_tree/aa5f590b2f8ae90f488320a5c0ce1664b6250141 Binary files differnew file mode 100644 index 000000000..7f5cb4d5f --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/aa5f590b2f8ae90f488320a5c0ce1664b6250141 diff --git a/fuzz/corpus/fuzz_ds_tree/aaf511006fc46ca08449d6f4988822988369725c b/fuzz/corpus/fuzz_ds_tree/aaf511006fc46ca08449d6f4988822988369725c Binary files differnew file mode 100644 index 000000000..01b1775c8 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/aaf511006fc46ca08449d6f4988822988369725c diff --git a/fuzz/corpus/fuzz_ds_tree/ae84c8f1709ff8fcefae24ebc14ffbfeebca84a8 b/fuzz/corpus/fuzz_ds_tree/ae84c8f1709ff8fcefae24ebc14ffbfeebca84a8 Binary files differnew file mode 100644 index 000000000..6a2695883 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/ae84c8f1709ff8fcefae24ebc14ffbfeebca84a8 diff --git a/fuzz/corpus/fuzz_ds_tree/b422ce7e471537303b914cf709aeeb5997183e13 b/fuzz/corpus/fuzz_ds_tree/b422ce7e471537303b914cf709aeeb5997183e13 Binary files differnew file mode 100644 index 000000000..423087277 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/b422ce7e471537303b914cf709aeeb5997183e13 diff --git a/fuzz/corpus/fuzz_ds_tree/ba04de28b49c623e55bfd4782f2e02bdfe98f0ee b/fuzz/corpus/fuzz_ds_tree/ba04de28b49c623e55bfd4782f2e02bdfe98f0ee Binary files differnew file mode 100644 index 000000000..b6476e4e5 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/ba04de28b49c623e55bfd4782f2e02bdfe98f0ee diff --git a/fuzz/corpus/fuzz_ds_tree/bae61b9f18afd63d2b282bf4319679d5275370dc b/fuzz/corpus/fuzz_ds_tree/bae61b9f18afd63d2b282bf4319679d5275370dc Binary files differnew file mode 100644 index 000000000..76e39b151 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/bae61b9f18afd63d2b282bf4319679d5275370dc diff --git a/fuzz/corpus/fuzz_ds_tree/c5613508b05a5ce7495f6b7b5c1080715c9f94e1 b/fuzz/corpus/fuzz_ds_tree/c5613508b05a5ce7495f6b7b5c1080715c9f94e1 Binary files differnew file mode 100644 index 000000000..2551b0887 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/c5613508b05a5ce7495f6b7b5c1080715c9f94e1 diff --git a/fuzz/corpus/fuzz_ds_tree/c75804765207820234ad3053f61007ab0e4445b4 b/fuzz/corpus/fuzz_ds_tree/c75804765207820234ad3053f61007ab0e4445b4 Binary files differnew file mode 100644 index 000000000..6b1372107 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/c75804765207820234ad3053f61007ab0e4445b4 diff --git a/fuzz/corpus/fuzz_ds_tree/d05019c14442561387c50ba71c173140c1e0770f b/fuzz/corpus/fuzz_ds_tree/d05019c14442561387c50ba71c173140c1e0770f Binary files differnew file mode 100644 index 000000000..ae89d94d7 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/d05019c14442561387c50ba71c173140c1e0770f diff --git a/fuzz/corpus/fuzz_ds_tree/d5b7e460b128cc07b7dbe2f845e8692370f9e2ef b/fuzz/corpus/fuzz_ds_tree/d5b7e460b128cc07b7dbe2f845e8692370f9e2ef Binary files differnew file mode 100644 index 000000000..9c2b44e2b --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/d5b7e460b128cc07b7dbe2f845e8692370f9e2ef diff --git a/fuzz/corpus/fuzz_ds_tree/e67f707ba8191170abba4703bb4f4192a0958939 b/fuzz/corpus/fuzz_ds_tree/e67f707ba8191170abba4703bb4f4192a0958939 Binary files differnew file mode 100644 index 000000000..12868aac5 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/e67f707ba8191170abba4703bb4f4192a0958939 diff --git a/fuzz/corpus/fuzz_ds_tree/ea4d4c2a8e91bd84473dac1e586d68d5c5451f5e b/fuzz/corpus/fuzz_ds_tree/ea4d4c2a8e91bd84473dac1e586d68d5c5451f5e Binary files differnew file mode 100644 index 000000000..c16c98167 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/ea4d4c2a8e91bd84473dac1e586d68d5c5451f5e diff --git a/fuzz/corpus/fuzz_ds_tree/eb386659c5a7aef8b95a191b90684d608d664a36 b/fuzz/corpus/fuzz_ds_tree/eb386659c5a7aef8b95a191b90684d608d664a36 Binary files differnew file mode 100644 index 000000000..e84b9842c --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/eb386659c5a7aef8b95a191b90684d608d664a36 diff --git a/fuzz/corpus/fuzz_ds_tree/f0ba5409fa8e20e3220a2d12c9d9fe39cd2818d9 b/fuzz/corpus/fuzz_ds_tree/f0ba5409fa8e20e3220a2d12c9d9fe39cd2818d9 Binary files differnew file mode 100644 index 000000000..bdef90f35 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/f0ba5409fa8e20e3220a2d12c9d9fe39cd2818d9 diff --git a/fuzz/corpus/fuzz_ds_tree/f18edcec12f7c8b5e1de7a43f3cb818677164e49 b/fuzz/corpus/fuzz_ds_tree/f18edcec12f7c8b5e1de7a43f3cb818677164e49 Binary files differnew file mode 100644 index 000000000..73737d8d5 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/f18edcec12f7c8b5e1de7a43f3cb818677164e49 diff --git a/fuzz/corpus/fuzz_ds_tree/f3259e536d2e75e24770e3afabf98a70a2e08932 b/fuzz/corpus/fuzz_ds_tree/f3259e536d2e75e24770e3afabf98a70a2e08932 Binary files differnew file mode 100644 index 000000000..200b24b81 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/f3259e536d2e75e24770e3afabf98a70a2e08932 diff --git a/fuzz/corpus/fuzz_ds_tree/f4318383dfd035c660f6454b98e0ee85846e6f9d b/fuzz/corpus/fuzz_ds_tree/f4318383dfd035c660f6454b98e0ee85846e6f9d Binary files differnew file mode 100644 index 000000000..9db6b5690 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/f4318383dfd035c660f6454b98e0ee85846e6f9d diff --git a/fuzz/corpus/fuzz_ds_tree/f45ab2dcdc5e5b00f36ba223500dde998ae877f2 b/fuzz/corpus/fuzz_ds_tree/f45ab2dcdc5e5b00f36ba223500dde998ae877f2 Binary files differnew file mode 100644 index 000000000..49b36dfed --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/f45ab2dcdc5e5b00f36ba223500dde998ae877f2 diff --git a/fuzz/corpus/fuzz_ds_tree/fc82def89dce7a25407e29cb6553747e9dbefcb5 b/fuzz/corpus/fuzz_ds_tree/fc82def89dce7a25407e29cb6553747e9dbefcb5 Binary files differnew file mode 100644 index 000000000..9941e8379 --- /dev/null +++ b/fuzz/corpus/fuzz_ds_tree/fc82def89dce7a25407e29cb6553747e9dbefcb5 diff --git a/fuzz/dictionary.dict b/fuzz/dictionary.dict new file mode 100644 index 000000000..f6c9b420b --- /dev/null +++ b/fuzz/dictionary.dict @@ -0,0 +1,66 @@ +#USENET + +"AUTHINFO USER " +"MODE READER\x0D\x0A" +"HELP\x0D\x0A" + +#FTP_DATA + +"RIFF" +"MZ" +"OggS" +"PK\x03\x04" +"\x00\x00\x01\xBA" +"Rar!" +"\x1A\x45\xDF\xA3" +"\xFF\xD8" +"GIF8" +"\x3C\x3F\x70\x68" +"\x23\x21\x2F\x62" +"%PDF" +"\x89PNG" +"<htm" +"\x0A<!D" +"\x37\x7A\xBC\xAF" +"\x1F\x8B\x08" +"<!DO" +"fLaC" +"ID3\x03" +"\xFF\xFB\x90\xC0" +"\xED\xAB\xEE\xDB" +"WzPa" +"FLV\x01" +"TAPE" +"\xD0\xCF\x11\xE0" +"\x3C\x25\x40\x20" +"\x3C\x21\x2D\x2D" +"!<ar" +"<?xm" +"<iq " +"SPFI" +"ABIF" +"BZh9" +"<cf" +"<CF" +".tem" +".ite" +".lef" + +#Some interesting user agent + +"Azureus " +"BitTorrent" +"BTWebClient" +"Shareaza " +"Mozilla" +"Mozilla/4.0 " +"Mozilla/4.0 (compatible; MSIE 6.0;" +"BearShare Lite " +"Microsoft-Delivery-Optimization/" +"Patcher" +"AspINet" +"Valve/Steam HTTP Client" +"MacTVUP" +"Blizzard Web Client" +"Blizzard Downloader" +"Zattoo/4" diff --git a/fuzz/fuzz_alg_hw_rsi_outliers_da.cpp b/fuzz/fuzz_alg_hw_rsi_outliers_da.cpp index 9ee2156be..9762104c5 100644 --- a/fuzz/fuzz_alg_hw_rsi_outliers_da.cpp +++ b/fuzz/fuzz_alg_hw_rsi_outliers_da.cpp @@ -46,7 +46,7 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) { alpha = fuzzed_data.ConsumeFloatingPointInRange<double>(0, 1); beta = fuzzed_data.ConsumeFloatingPointInRange<double>(0, 1); gamma = fuzzed_data.ConsumeFloatingPointInRange<double>(0, 1); - significance = fuzzed_data.ConsumeFloatingPointInRange<float>(0, 1); + significance = fuzzed_data.ConsumeFloatingPointInRange<float>(0, 1.1); rc_hw = ndpi_hw_init(&hw, num_periods, additive_seeasonal, alpha, beta, gamma, significance); /* Init RSI */ diff --git a/fuzz/fuzz_alg_ses_des.cpp b/fuzz/fuzz_alg_ses_des.cpp index 70efef3d0..45c1f189e 100644 --- a/fuzz/fuzz_alg_ses_des.cpp +++ b/fuzz/fuzz_alg_ses_des.cpp @@ -32,7 +32,7 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) { ndpi_des_fitting(values, num_iteration, &alpha_des, &beta); ndpi_free(values); - significance = fuzzed_data.ConsumeFloatingPointInRange<float>(0, 1); + significance = fuzzed_data.ConsumeFloatingPointInRange<float>(0, 1.1); rc_ses = ndpi_ses_init(&s, alpha_ses, significance); rc_des = ndpi_des_init(&d, alpha_des, beta, significance); diff --git a/fuzz/fuzz_common_code.c b/fuzz/fuzz_common_code.c index e4ab68ad8..30dc5baa7 100644 --- a/fuzz/fuzz_common_code.c +++ b/fuzz/fuzz_common_code.c @@ -34,22 +34,23 @@ void fuzz_set_alloc_callbacks_and_seed(int seed) fuzz_set_alloc_seed(seed); } -void fuzz_init_detection_module(struct ndpi_detection_module_struct **ndpi_info_mod, - int enable_log) +void fuzz_init_detection_module(struct ndpi_detection_module_struct **ndpi_info_mod) { ndpi_init_prefs prefs = ndpi_enable_ja3_plus; - NDPI_PROTOCOL_BITMASK all, debug_bitmask; + NDPI_PROTOCOL_BITMASK all; if(*ndpi_info_mod == NULL) { *ndpi_info_mod = ndpi_init_detection_module(prefs); NDPI_BITMASK_SET_ALL(all); ndpi_set_protocol_detection_bitmask2(*ndpi_info_mod, &all); - if(enable_log) { - NDPI_BITMASK_SET_ALL(debug_bitmask); - ndpi_set_log_level(*ndpi_info_mod, 4); - ndpi_set_debug_bitmask(*ndpi_info_mod, debug_bitmask); - } +#if 0 + NDPI_PROTOCOL_BITMASK debug_bitmask; + + NDPI_BITMASK_SET_ALL(debug_bitmask); + ndpi_set_log_level(*ndpi_info_mod, 4); + ndpi_set_debug_bitmask(*ndpi_info_mod, debug_bitmask); +#endif ndpi_load_protocols_file(*ndpi_info_mod, "protos.txt"); ndpi_load_categories_file(*ndpi_info_mod, "categories.txt", NULL); diff --git a/fuzz/fuzz_common_code.h b/fuzz/fuzz_common_code.h index 84670a0bb..02df3e0cc 100644 --- a/fuzz/fuzz_common_code.h +++ b/fuzz/fuzz_common_code.h @@ -8,8 +8,7 @@ extern "C" { #endif -void fuzz_init_detection_module(struct ndpi_detection_module_struct **ndpi_info_mod, - int enable_log); +void fuzz_init_detection_module(struct ndpi_detection_module_struct **ndpi_info_mod); /* To allow memory allocation failures */ void fuzz_set_alloc_callbacks(void); diff --git a/fuzz/fuzz_community_id.cpp b/fuzz/fuzz_community_id.cpp new file mode 100644 index 000000000..3a029ec79 --- /dev/null +++ b/fuzz/fuzz_community_id.cpp @@ -0,0 +1,58 @@ +#include "ndpi_api.h" +#include "fuzz_common_code.h" + +#include <stdint.h> +#include <stdio.h> +#include <assert.h> +#include "fuzzer/FuzzedDataProvider.h" + +extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) { + FuzzedDataProvider fuzzed_data(data, size); + u_int8_t is_ipv6, l4_proto, icmp_type, icmp_code; + u_int16_t src_port, dst_port; + u_char *hash_buf; + u_int8_t hash_buf_len; + + /* Just to have some data */ + + /* To allow memory allocation failures */ + fuzz_set_alloc_callbacks_and_seed(size); + + is_ipv6 = fuzzed_data.ConsumeBool(); + l4_proto = fuzzed_data.ConsumeIntegral<u_int8_t>(); + src_port = fuzzed_data.ConsumeIntegral<u_int16_t>(); + dst_port = fuzzed_data.ConsumeIntegral<u_int16_t>(); + icmp_type = fuzzed_data.ConsumeIntegral<u_int8_t>(); + icmp_code = fuzzed_data.ConsumeIntegral<u_int8_t>(); + hash_buf_len = fuzzed_data.ConsumeIntegralInRange(0, 64); + hash_buf = (u_char *)ndpi_malloc(hash_buf_len); + if (!hash_buf) + return 0; + + if (!is_ipv6) { + u_int32_t src_ip, dst_ip; + + src_ip = fuzzed_data.ConsumeIntegral<u_int32_t>(); + dst_ip = fuzzed_data.ConsumeIntegral<u_int32_t>(); + + ndpi_flowv4_flow_hash(l4_proto, src_ip, dst_ip, src_port, dst_port, + icmp_type, icmp_code, hash_buf, hash_buf_len); + } else { + u_char *src_ip, *dst_ip; + + if(fuzzed_data.remaining_bytes() >= 32) { + std::vector<u_int8_t>data1 = fuzzed_data.ConsumeBytes<u_int8_t>(16); + src_ip = data1.data(); + std::vector<u_int8_t>data2 = fuzzed_data.ConsumeBytes<u_int8_t>(16); + dst_ip = data2.data(); + + ndpi_flowv6_flow_hash(l4_proto, (struct ndpi_in6_addr *)src_ip, + (struct ndpi_in6_addr *)dst_ip, src_port, dst_port, + icmp_type, icmp_code, hash_buf, hash_buf_len); + } + } + + ndpi_free(hash_buf); + + return 0; +} diff --git a/fuzz/fuzz_config.cpp b/fuzz/fuzz_config.cpp index d43ede13a..c5e404391 100644 --- a/fuzz/fuzz_config.cpp +++ b/fuzz/fuzz_config.cpp @@ -23,7 +23,7 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) { if(fuzzed_data.remaining_bytes() < 4 + /* ndpi_init_detection_module() */ NDPI_MAX_SUPPORTED_PROTOCOLS + NDPI_MAX_NUM_CUSTOM_PROTOCOLS + 5 + /* files */ - (NDPI_LRUCACHE_MAX * 5) + /* LRU caches */ + ((NDPI_LRUCACHE_MAX + 1) * 5) + /* LRU caches */ 2 + 1 + 4 + /* ndpi_set_detection_preferences() */ 7 + /* Opportunistic tls */ 29 /* Min real data: ip length + udp length + 1 byte */) @@ -55,7 +55,7 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) { if(fuzzed_data.ConsumeBool()) ndpi_load_malicious_sha1_file(ndpi_info_mod, "sha1_fingerprints.csv"); - for(i = 0; i < NDPI_LRUCACHE_MAX; i++) { + for(i = 0; i < NDPI_LRUCACHE_MAX + 1; i++) { /* + 1 to test invalid type */ ndpi_set_lru_cache_size(ndpi_info_mod, static_cast<lru_cache_type>(i), fuzzed_data.ConsumeIntegralInRange(0, (1 << 16) - 1)); ndpi_get_lru_cache_size(ndpi_info_mod, static_cast<lru_cache_type>(i), &num); @@ -98,14 +98,20 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) { assert(pkt.size() >= 29); /* To be sure check on fuzzed_data.remaining_bytes() at the beginning is right */ ndpi_detection_process_packet(ndpi_info_mod, &flow, pkt.data(), pkt.size(), 0, NULL); ndpi_detection_giveup(ndpi_info_mod, &flow, 1, &protocol_was_guessed); + /* ndpi_guess_undetected_protocol() is a "strange" function (since is ipv4 only) + but it is exported by the library and it is used by ntopng. Try fuzzing it, here */ + if(!flow.is_ipv6) + ndpi_guess_undetected_protocol(ndpi_info_mod, &flow, flow.l4_proto, + flow.c_address.v4, flow.s_address.v4, + flow.c_port, flow.s_port); ndpi_free_flow_data(&flow); /* Get some final stats */ - for(i = 0; i < NDPI_LRUCACHE_MAX; i++) + for(i = 0; i < NDPI_LRUCACHE_MAX + 1; i++) /* + 1 to test invalid type */ ndpi_get_lru_cache_stats(ndpi_info_mod, static_cast<lru_cache_type>(i), &lru_stats); - for(i = 0; i < NDPI_PTREE_MAX; i++) + for(i = 0; i < NDPI_PTREE_MAX + 1; i++) /* + 1 to test invalid type */ ndpi_get_patricia_stats(ndpi_info_mod, static_cast<ptree_type>(i), &patricia_stats); - for(i = 0; i < NDPI_AUTOMA_MAX; i++) + for(i = 0; i < NDPI_AUTOMA_MAX + 1; i++) /* + 1 to test invalid type */ ndpi_get_automa_stats(ndpi_info_mod, static_cast<automa_type>(i), &automa_stats); ndpi_exit_detection_module(ndpi_info_mod); diff --git a/fuzz/fuzz_ds_ahocorasick.cpp b/fuzz/fuzz_ds_ahocorasick.cpp index 67521811e..cd56058e1 100644 --- a/fuzz/fuzz_ds_ahocorasick.cpp +++ b/fuzz/fuzz_ds_ahocorasick.cpp @@ -59,10 +59,11 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) { ac_pattern.astring = value_dup; ac_pattern.length = strlen(value_dup); - ac_pattern.rep.number = 0; + ac_pattern.rep.number = fuzzed_data.ConsumeIntegral<u_int16_t>(); ac_pattern.rep.category = 0; ac_pattern.rep.breed = 0; ac_pattern.rep.level = fuzzed_data.ConsumeIntegralInRange(0, 2); + ac_pattern.rep.from_start = fuzzed_data.ConsumeBool(); ac_pattern.rep.at_end = fuzzed_data.ConsumeBool(); ac_pattern.rep.dot = memchr(value_dup, '.', strlen(value_dup)) != NULL; diff --git a/fuzz/fuzz_ds_libcache.cpp b/fuzz/fuzz_ds_libcache.cpp new file mode 100644 index 000000000..f4b30092f --- /dev/null +++ b/fuzz/fuzz_ds_libcache.cpp @@ -0,0 +1,68 @@ +#include "ndpi_api.h" +#include "../src/lib/third_party/include/libcache.h" +#include "fuzz_common_code.h" + +#include <stdint.h> +#include <stdio.h> +#include <assert.h> +#include "fuzzer/FuzzedDataProvider.h" + +extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) { + FuzzedDataProvider fuzzed_data(data, size); + u_int16_t i, rc, num_iteration, data_len, is_added = 0; + std::vector<u_int8_t>value_added; + cache_t c; + + /* Just to have some data */ + if (fuzzed_data.remaining_bytes() < 2048) + return -1; + + /* To allow memory allocation failures */ + fuzz_set_alloc_callbacks_and_seed(size); + + c = cache_new(fuzzed_data.ConsumeIntegral<u_int8_t>()); + + num_iteration = fuzzed_data.ConsumeIntegral<u_int8_t>(); + for (i = 0; i < num_iteration; i++) { + + data_len = fuzzed_data.ConsumeIntegralInRange(0, 127); + std::vector<u_int8_t>data = fuzzed_data.ConsumeBytes<u_int8_t>(data_len); + + rc = cache_add(c, data.data(), data.size()); + /* Keep one random entry really added */ + if (rc == CACHE_NO_ERROR && is_added == 0 && fuzzed_data.ConsumeBool()) { + value_added = data; + is_added = 1; + } + } + + /* "Random" search */ + num_iteration = fuzzed_data.ConsumeIntegral<u_int8_t>(); + for (i = 0; i < num_iteration; i++) { + data_len = fuzzed_data.ConsumeIntegralInRange(0, 127); + std::vector<u_int8_t>data = fuzzed_data.ConsumeBytes<u_int8_t>(data_len); + + cache_contains(c, data.data(), data.size()); + } + /* Search of an added entry */ + if (is_added) { + cache_contains(c, value_added.data(), value_added.size()); + } + + /* "Random" remove */ + num_iteration = fuzzed_data.ConsumeIntegral<u_int8_t>(); + for (i = 0; i < num_iteration; i++) { + data_len = fuzzed_data.ConsumeIntegralInRange(0, 127); + std::vector<u_int8_t>data = fuzzed_data.ConsumeBytes<u_int8_t>(data_len); + + cache_remove(c, data.data(), data.size()); + } + /* Remove of an added entry */ + if (is_added) { + cache_remove(c, value_added.data(), value_added.size()); + } + + cache_free(c); + + return 0; +} diff --git a/fuzz/fuzz_ds_patricia.cpp b/fuzz/fuzz_ds_patricia.cpp index c514f3b00..4655ee94f 100644 --- a/fuzz/fuzz_ds_patricia.cpp +++ b/fuzz/fuzz_ds_patricia.cpp @@ -128,8 +128,8 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) { ndpi_patricia_remove(p, node); } } else { - if(fuzzed_data.remaining_bytes() > 128) { - std::vector<u_int8_t>data = fuzzed_data.ConsumeBytes<u_int8_t>(128); + if(fuzzed_data.remaining_bytes() > 16) { + std::vector<u_int8_t>data = fuzzed_data.ConsumeBytes<u_int8_t>(16); ip = data.data(); ip_len = fuzzed_data.ConsumeIntegralInRange(0, 128); ndpi_fill_prefix_v6(&prefix, (const struct in6_addr *)ip, ip_len, 128); diff --git a/fuzz/fuzz_ds_tree.cpp b/fuzz/fuzz_ds_tree.cpp new file mode 100644 index 000000000..ee00b1723 --- /dev/null +++ b/fuzz/fuzz_ds_tree.cpp @@ -0,0 +1,95 @@ +#include "ndpi_api.h" +#include "fuzz_common_code.h" + +#include <stdint.h> +#include <stdio.h> +#include <assert.h> +#include "fuzzer/FuzzedDataProvider.h" + +static int __compare(const void *a, const void *b) +{ + u_int32_t *entry_a, *entry_b; + + entry_a = (u_int32_t *)a; + entry_b = (u_int32_t *)b; + + return entry_a == entry_b ? 0 : (entry_a < entry_b ? -1 : +1); +} +static void __free(void * const node) +{ + u_int32_t *entry = (u_int32_t *)node; + ndpi_free(entry); +} +static void __walk(const void *a, ndpi_VISIT which, int depth, void *user_data) +{ + assert(user_data == NULL); + assert(a); +} + +extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) { + FuzzedDataProvider fuzzed_data(data, size); + u_int16_t i, num_iteration, is_added = 0; + void *root = NULL; + u_int32_t *entry, value_added, e; + + /* Just to have some data */ + if (fuzzed_data.remaining_bytes() < 1024) + return -1; + + /* To allow memory allocation failures */ + fuzz_set_alloc_callbacks_and_seed(size); + + num_iteration = fuzzed_data.ConsumeIntegral<u_int8_t>(); + for (i = 0; i < num_iteration; i++) { + entry = (u_int32_t *)ndpi_malloc(sizeof(u_int32_t)); + if (!entry) + continue; + *entry = fuzzed_data.ConsumeIntegral<u_int32_t>(); + + if(ndpi_tfind(entry, &root, __compare) == NULL) { + if(ndpi_tsearch(entry, &root, __compare) == NULL) { + ndpi_free(entry); + } else { + /* Keep one random entry really added */ + if (is_added == 0 && fuzzed_data.ConsumeBool()) { + value_added = *entry; + is_added = 1; + } + } + } else { + ndpi_free(entry); + } + } + + /* "Random" search */ + num_iteration = fuzzed_data.ConsumeIntegral<u_int8_t>(); + for (i = 0; i < num_iteration; i++) { + e = fuzzed_data.ConsumeIntegral<u_int32_t>(); + + ndpi_tfind(&e, &root, __compare); + } + /* Search of an added node */ + if (is_added) { + ndpi_tfind(&value_added, &root, __compare); + } + + ndpi_twalk(root, __walk, NULL); + + /* "Random" delete */ + num_iteration = fuzzed_data.ConsumeIntegral<u_int8_t>(); + for (i = 0; i < num_iteration; i++) { + e = fuzzed_data.ConsumeIntegral<u_int32_t>(); + + ndpi_tdelete(&e, &root, __compare); + } + /* Delete of an added node */ + if (is_added) { + ndpi_tdelete(&value_added, &root, __compare); + } + + ndpi_twalk(root, __walk, NULL); + + ndpi_tdestroy(root, __free); + + return 0; +} diff --git a/fuzz/fuzz_process_packet.c b/fuzz/fuzz_process_packet.c index 7376f4fd8..dcd15c99e 100644 --- a/fuzz/fuzz_process_packet.c +++ b/fuzz/fuzz_process_packet.c @@ -12,7 +12,7 @@ int LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size) { uint8_t protocol_was_guessed; if (ndpi_info_mod == NULL) { - fuzz_init_detection_module(&ndpi_info_mod, 0); + fuzz_init_detection_module(&ndpi_info_mod); ndpi_init_serializer(&json_serializer, ndpi_serialization_format_json); ndpi_init_serializer(&csv_serializer, ndpi_serialization_format_csv); diff --git a/fuzz/fuzz_quic_get_crypto_data.c b/fuzz/fuzz_quic_get_crypto_data.c index c0dc85f8c..728b7ec67 100644 --- a/fuzz/fuzz_quic_get_crypto_data.c +++ b/fuzz/fuzz_quic_get_crypto_data.c @@ -28,7 +28,7 @@ int LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size) { u_int32_t first_int, version = 0; if(ndpi_info_mod == NULL) { - fuzz_init_detection_module(&ndpi_info_mod, 0); + fuzz_init_detection_module(&ndpi_info_mod); flow = ndpi_calloc(1, SIZEOF_FLOW_STRUCT); } |