Skip to content

@Cyan4973 Cyan4973 released this Aug 20, 2019

This is primarily a bugfix release, driven by the bugs found and fixed since LZ4 recent integration into Google's oss-fuzz, initiated by @cmeister2 . The new capability was put to good use by @terrelln, dramatically expanding the number of scenarios covered by the profile-guided fuzzer. These scenarios were already covered by unguided fuzzers, but a few bugs require a large combinations of factors that unguided fuzzer are unable to produce in a reasonable timeframe.

Due to these fixes, an upgrade of LZ4 to its latest version is recommended.

  • fix : out-of-bound read in exceptional circumstances when using decompress_partial(), by @terrelln
  • fix : slim opportunity for out-of-bound write with compress_fast() with a large enough input and when providing an output smaller than recommended (< LZ4_compressBound(inputSize)), by @terrelln
  • fix : rare data corruption bug with LZ4_compress_destSize(), by @terrelln
  • fix : data corruption bug when Streaming with an Attached Dict in HC Mode, by @felixhandte
  • perf: enable LZ4_FAST_DEC_LOOP on aarch64/GCC by default, by @prekageo
  • perf: improved lz4frame streaming API speed, by @dreambottle
  • perf: speed up lz4hc on slow patterns when using external dictionary, by @terrelln
  • api: better in-place decompression and compression support
  • cli : --list supports multi-frames files, by @gstedman
  • cli: --version outputs to stdout
  • cli : add option --best as an alias of -12 , by @Low-power
  • misc: Integration into oss-fuzz by @cmeister2, expanded list of scenarios by @terrelln
Assets 4
You can’t perform that action at this time.