Exercise ZSTD_findDecompressedSize() in the simple decompression fuzzer (#3959)

* Improve decompression fuzzer

* Fix legacy frame header fuzzer crash, add unit test
This commit is contained in:
Elliot Gorokhovsky
2024-03-12 17:07:06 -04:00
committed by GitHub
parent 92fbd42894
commit f65b9e27ce
3 changed files with 25 additions and 1 deletions
+9
View File
@@ -2408,6 +2408,15 @@ static int basicUnitTests(U32 seed, double compressibility, int bigTests)
}
DISPLAYLEVEL(3, "OK \n");
DISPLAYLEVEL(3, "test%3i : Decoder should reject invalid frame header on legacy frames: ", testNb++);
{
const unsigned char compressed[] = { 0x26,0xb5,0x2f,0xfd,0x50,0x91,0xfd,0xd8,0xb5 };
const size_t compressedSize = 9;
size_t const dSize = ZSTD_decompress(NULL, 0, compressed, compressedSize);
CHECK(!ZSTD_isError(dSize), "must reject when legacy frame header is invalid");
}
DISPLAYLEVEL(3, "OK \n");
_end:
FUZ_freeDictionary(dictionary);
ZSTD_freeCStream(zc);