]> granicus.if.org Git - xz/commit
liblzma: Don't verify header CRC32s if building for fuzz testing.
authorLasse Collin <lasse.collin@tukaani.org>
Fri, 26 Oct 2018 19:49:10 +0000 (22:49 +0300)
committerLasse Collin <lasse.collin@tukaani.org>
Fri, 26 Oct 2018 19:49:10 +0000 (22:49 +0300)
commita18ae42a79a19b1394b41eb3e238139fd28012ec
treef2394d743768860000ba45774dab932eafb87fcb
parentf76f7516d6a1c832f61810c82e92d151cc80966c
liblzma: Don't verify header CRC32s if building for fuzz testing.

FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION is #defined when liblzma
is being built for fuzz testing.

Most fuzzed inputs would normally get rejected because of incorrect
CRC32 and the actual header decoding code wouldn't get fuzzed.
Disabling CRC32 checks avoids this problem. The fuzzer program
must still use LZMA_IGNORE_CHECK flag to disable verification of
integrity checks of uncompressed data.
src/liblzma/common/block_header_decoder.c
src/liblzma/common/index_decoder.c
src/liblzma/common/index_hash.c
src/liblzma/common/stream_flags_decoder.c