diff options
author | Yann Collet <cyan@fb.com> | 2016-09-05 13:49:55 (GMT) |
---|---|---|
committer | Yann Collet <cyan@fb.com> | 2016-09-05 13:49:55 (GMT) |
commit | c8a78dba1fc21f64dec72cf217c21fe8784c42bf (patch) | |
tree | 691951a9e57227337f4d53bbe6e469313c7fd7a2 /programs | |
parent | 53515b05e66b203bc44ed374fee12bae97737e02 (diff) | |
download | lz4-c8a78dba1fc21f64dec72cf217c21fe8784c42bf.zip lz4-c8a78dba1fc21f64dec72cf217c21fe8784c42bf.tar.gz lz4-c8a78dba1fc21f64dec72cf217c21fe8784c42bf.tar.bz2 |
datagen depends on lz4.h for version string
Diffstat (limited to 'programs')
-rw-r--r-- | programs/datagencli.c | 7 | ||||
-rw-r--r-- | programs/frametest.c | 15 |
2 files changed, 12 insertions, 10 deletions
diff --git a/programs/datagencli.c b/programs/datagencli.c index 7b2b140..2fbcc50 100644 --- a/programs/datagencli.c +++ b/programs/datagencli.c @@ -29,6 +29,7 @@ **************************************/ #include <stdio.h> /* fprintf, stderr */ #include "datagen.h" /* RDG_generate */ +#include "lz4.h" /* LZ4_VERSION_STRING */ /************************************** @@ -53,10 +54,6 @@ /************************************** * Constants **************************************/ -#ifndef LZ4_VERSION -# define LZ4_VERSION "r1" -#endif - #define KB *(1 <<10) #define MB *(1 <<20) #define GB *(1U<<30) @@ -182,7 +179,7 @@ int main(int argc, char** argv) } } - DISPLAYLEVEL(4, "Data Generator %s \n", LZ4_VERSION); + DISPLAYLEVEL(4, "Data Generator %s \n", LZ4_VERSION_STRING); DISPLAYLEVEL(3, "Seed = %u \n", seed); if (proba!=COMPRESSIBILITY_DEFAULT) DISPLAYLEVEL(3, "Compressibility : %i%%\n", (U32)(proba*100)); diff --git a/programs/frametest.c b/programs/frametest.c index d9f2566..e8f6975 100644 --- a/programs/frametest.c +++ b/programs/frametest.c @@ -591,7 +591,7 @@ int fuzzerTests(U32 seed, unsigned nbTests, unsigned startTest, double compressi size_t srcStart = FUZ_rand(&randState) % (srcDataLength - srcSize); U64 frameContentSize = ((FUZ_rand(&randState) & 0xF) == 1) ? srcSize : 0; size_t cSize; - U64 crcOrig, crcDecoded; + U64 crcOrig; LZ4F_preferences_t* prefsPtr = &prefs; (void)FUZ_rand(&coreRand); /* update seed */ @@ -654,24 +654,29 @@ int fuzzerTests(U32 seed, unsigned nbTests, unsigned startTest, double compressi { const BYTE* ip = (const BYTE*)compressedBuffer; const BYTE* const iend = ip + cSize; + DISPLAY("cSize : %u ; srcSize : %u \n", (U32)cSize, (U32)srcDataLength); BYTE* op = (BYTE*)decodedBuffer; BYTE* const oend = op + srcDataLength; size_t totalOut = 0; unsigned maxBits = FUZ_highbit((U32)cSize); - unsigned nonContiguousDst = (FUZ_rand(&randState) & 3) == 1; + unsigned nonContiguousDst = (FUZ_rand(&randState) & 3) == 1; /* 0 : contiguous; 1 : non-contiguous; 2 : dst overwritten */ nonContiguousDst += FUZ_rand(&randState) & nonContiguousDst; /* 0=>0; 1=>1,2 */ XXH64_reset(&xxh64, 1); if (maxBits < 3) maxBits = 3; while (ip < iend) { - unsigned nbBitsI = (FUZ_rand(&randState) % (maxBits-1)) + 1; - unsigned nbBitsO = (FUZ_rand(&randState) % (maxBits)) + 1; + unsigned const nbBitsI = (FUZ_rand(&randState) % (maxBits-1)) + 1; + unsigned const nbBitsO = (FUZ_rand(&randState) % (maxBits)) + 1; size_t iSize = (FUZ_rand(&randState) & ((1<<nbBitsI)-1)) + 1; size_t oSize = (FUZ_rand(&randState) & ((1<<nbBitsO)-1)) + 2; if (iSize > (size_t)(iend-ip)) iSize = iend-ip; if (oSize > (size_t)(oend-op)) oSize = oend-op; dOptions.stableDst = FUZ_rand(&randState) & 1; if (nonContiguousDst==2) dOptions.stableDst = 0; + DISPLAY("in : %u / %u ; out : %u / %u \n", (U32)iSize, (U32)(iend-ip), (U32)oSize, (U32)(oend-op)); + if (iSize == 107662) + iSize += !iSize; result = LZ4F_decompress(dCtx, op, &oSize, ip, &iSize, &dOptions); + DISPLAY("consumed : %u ; generated : %u ; hint : %u \n", (U32)iSize, (U32)oSize, (U32)result); if (result == (size_t)-LZ4F_ERROR_contentChecksum_invalid) locateBuffDiff((BYTE*)srcBuffer+srcStart, decodedBuffer, srcSize, nonContiguousDst); CHECK(LZ4F_isError(result), "Decompression failed (error %i:%s)", (int)result, LZ4F_getErrorName((LZ4F_errorCode_t)result)); @@ -684,7 +689,7 @@ int fuzzerTests(U32 seed, unsigned nbTests, unsigned startTest, double compressi } CHECK(result != 0, "Frame decompression failed (error %i)", (int)result); if (totalOut) { /* otherwise, it's a skippable frame */ - crcDecoded = XXH64_digest(&xxh64); + U64 const crcDecoded = XXH64_digest(&xxh64); if (crcDecoded != crcOrig) locateBuffDiff((BYTE*)srcBuffer+srcStart, decodedBuffer, srcSize, nonContiguousDst); CHECK(crcDecoded != crcOrig, "Decompression corruption"); } |