]> git.ipfire.org Git - thirdparty/zstd.git/commitdiff
Fix fuzzing with ZSTD_MULTITHREAD
authorDaniel Kutenin <kutdanila@yandex.ru>
Tue, 10 Jan 2023 15:33:50 +0000 (15:33 +0000)
committerNick Terrell <nickrterrell@gmail.com>
Wed, 11 Jan 2023 18:09:19 +0000 (10:09 -0800)
At Google we fuzz zstd without ZSTD_MULTITHREAD but we want inputs to be as much as reproducible. It allows us to test new fuzzing methods for our fuzz team internally and have more horsepower to find bugs

tests/fuzz/zstd_helpers.c

index d5210627e9ccf9c63c36e4f46f9ddbb7789297c5..ef4f057742883d75076c45ed334cb94fc8c20b44 100644 (file)
@@ -89,12 +89,11 @@ void FUZZ_setRandomParameters(ZSTD_CCtx *cctx, size_t srcSize, FUZZ_dataProducer
     setRand(cctx, ZSTD_c_ldmHashRateLog, ZSTD_LDM_HASHRATELOG_MIN,
             ZSTD_LDM_HASHRATELOG_MAX, producer);
     /* Set misc parameters */
-#ifndef ZSTD_MULTITHREAD
-    setRand(cctx, ZSTD_c_nbWorkers, 0, 0, producer);
-    setRand(cctx, ZSTD_c_rsyncable, 0, 0, producer);
-#else
     setRand(cctx, ZSTD_c_nbWorkers, 0, 2, producer);
     setRand(cctx, ZSTD_c_rsyncable, 0, 1, producer);
+#ifndef ZSTD_MULTITHREAD
+    set(cctx, ZSTD_c_nbWorkers, 0);
+    set(cctx, ZSTD_c_rsyncable, 0);
 #endif
     setRand(cctx, ZSTD_c_useRowMatchFinder, 0, 2, producer);
     setRand(cctx, ZSTD_c_enableDedicatedDictSearch, 0, 1, producer);