Yann Collet
9dc5981368
Merge pull request #739 from cmeister2/cmeister2/ossfuzz
...
oss-fuzz: Add a fuzzing target that compiles in the oss-fuzz environment
2019-06-30 13:05:15 -07:00
Max Dymond
f3ec519f59
Remove unnecessary call to Makefile.inc
2019-06-30 20:16:03 +01:00
Yann Collet
40bd6164bb
Merge pull request #741 from lzutao/meson-deprecated-warn
...
meson: Fix deprecated warnings on build options
2019-06-30 11:33:38 -07:00
Yann Collet
bccbdb47be
Merge pull request #742 from lz4/fuzzasan_fixed
...
New fuzzer test for #738
2019-06-30 09:41:56 -07:00
Lzu Tao
84f98dd316
meson: Rename options in travis config
2019-06-29 20:54:39 +07:00
Yann Collet
1ccca52f53
Merge branch 'dev' into fuzzasan_fixed
2019-06-28 21:03:07 -07:00
Yann Collet
3b917ef6e6
travisCI: added ASAN fuzzer tests
...
and fixed minor formatting warnings
2019-06-28 20:55:47 -07:00
Yann Collet
567b4e098b
moved noisy-src decoder test into cBuffer_exact
...
so that it can also catch any potential read out-of-bound in the input buffer
(none reported so far, just a precaution for the future).
2019-06-28 20:23:12 -07:00
Yann Collet
62f59d562b
fuzzer: added test to catch #738
2019-06-28 20:15:43 -07:00
Lzu Tao
ff27a1572b
meson: Always build gen_manual on build machine
...
As gen_manual is using as a generator, not a binary target
installed on host machine.
2019-06-29 10:11:32 +07:00
Lzu Tao
4c60f25c65
meson: Fix deprecated warnings on build options
...
Meson now reserves `build_` prefix options.
2019-06-29 10:10:05 +07:00
Yann Collet
8b97fcda60
Merge pull request #740 from terrelln/fix2
...
Fix out-of-bounds read
2019-06-28 19:22:54 -07:00
Max Dymond
e2a33f12e1
More markups for style changes
2019-06-29 00:23:06 +01:00
Max Dymond
02b5b3c242
Move to using C rather than C++ for compilation
2019-06-28 23:48:33 +01:00
Nick Terrell
e72d442300
Fix out-of-bounds read of up to 64 KB in the past
2019-06-28 14:58:35 -07:00
Max Dymond
60d71dc20c
Write a simple decompress target as well
2019-06-28 22:43:04 +01:00
Max Dymond
88a7cfd728
Code review markups:
...
- Correct use of CPPFLAGS
- Detect allocation failure
- Add a CHECK macro for failure
2019-06-28 20:54:46 +01:00
Max Dymond
a5cf079d4d
Add a fuzzing target that compiles in the oss-fuzz environment
2019-06-28 08:30:02 +01:00
Yann Collet
9a2a9f2d0f
Merge pull request #735 from lz4/versionOut
...
fix #734 : --version should output to stdout
2019-06-25 10:32:19 -07:00
Yann Collet
baf9b0e043
fix #734 : --version should output to stdout
...
instead of stderr
2019-06-24 16:08:30 -07:00
Yann Collet
798301b4e1
update simple_buffer example
...
there were a few tiny inaccuracies, especially in error conditions.
2019-06-06 14:17:44 -07:00
Yann Collet
1d759576b9
precise again that LZ4 decoder needs metadata
...
and that such metadata must be provided / sent / saved by the application.
2019-06-06 13:20:30 -07:00
Yann Collet
3a3639e32d
Merge pull request #727 from ephiepark/dev
...
CircleCI : use custom Docker Image with pre-installed dependencies
2019-06-05 14:34:28 -07:00
Ephraim Park
f7b52ecbba
circleci : use custom docker image with pre-installed dependencies
2019-06-05 13:12:51 -07:00
Yann Collet
348e107d99
restored FORCE_INLINE
2019-06-04 14:04:49 -07:00
Yann Collet
d82a22b3f1
Merge pull request #718 from lz4/fullbench
...
fullbench: added test scenario LZ4F_decompress_followHint
2019-05-31 15:18:12 -07:00
Yann Collet
33a04fb8bd
fullbench: ensure decompressionFunction and dName are initialized
...
Visual Studio seems to miss that they are necessarily initialized in the switch() { case: }
2019-05-31 13:25:12 -07:00
Yann Collet
280fc0856d
Merge pull request #717 from lz4/inplace
...
Added documentation and macro to support in-place compression and decompression
2019-05-31 12:59:38 -07:00
Yann Collet
8008fdf396
Merge pull request #719 from parheliamm/dev
...
FAST_DEC_LOOP: move offset check in specific condition.
2019-05-31 12:23:52 -07:00
Yann Collet
99f1721ff5
replaced while(1)
...
by for (;;)
just to please Visual Studio C4127 .
2019-05-31 12:01:33 -07:00
Yann Collet
5997e139f5
added more details for in-place documentation
2019-05-31 11:56:59 -07:00
Yann Collet
33cb8518ac
decompress: changed final memcpy() into memmove()
...
for compatibility with in-place decompression scenarios.
2019-05-31 11:44:37 -07:00
Yann Collet
4eec64e4d8
Makefile removed CFLAGS modifier
...
which was removing `-O3` as a side effect
2019-05-31 11:31:48 -07:00
Chenxi Mao
64b5917736
FAST_DEC_LOOP: only did offset check in specific condition.
...
When I did FAST_DEC_LOOP performance test, I found the
offset check is much more than v1.8.3
You will see the condition check difference via lzbench with dickens test case.
v1.8.3 34959
v.1.9.x 1055885
After investigate the code, we could see the difference.
v.1.8.3 SKIP the condition check if
if condition is true in:
https://github.com/lz4/lz4/blob/v1.8.3/lib/lz4.c#L1463
AND below condition is true
https://github.com/lz4/lz4/blob/v1.8.3/lib/lz4.c#L1478 \
The offset check should be invoked.
v1.9.3
The offset check code will be invoked in every loop which lead to downgrade.
So the fix would be move this check to specific condition
to avoid useless condition check.
After this change, the call number is same as v1.8.3
2019-05-31 08:36:13 +08:00
Yann Collet
89c97d5ea6
fullbench: added test scenario LZ4F_decompress_followHint
...
This emulates a streaming scenario,
where the caller follows rigorously the srcSize hints
provided as return value of LZ4F_decompress().
This is useful to show the issue in #714 ,
where data is uselessly copied in a tmp buffer first.
2019-05-30 17:29:51 -07:00
Yann Collet
b77c9c062d
Merge pull request #714 from dreambottle/fix-lz4f-input-buf-use
...
Fix src temporary buffer use in lz4frame
2019-05-30 17:28:59 -07:00
Yann Collet
2f9d1736fb
updated API manual
2019-05-30 16:23:53 -07:00
Yann Collet
676d46df27
updated LZ4_DECOMPRESS_INPLACE_MARGIN
...
to pass worst case scenario.
Now adds margin proportional to input size to counter local expansion.
2019-05-30 16:19:30 -07:00
Yann Collet
6c69ae6bd6
added test case for in-place decompression
...
worst case, designed to make the decoder overwrite into input
2019-05-30 16:17:47 -07:00
Yann Collet
22adbb176a
add more doc on in-place (de)compression
2019-05-30 09:45:21 -07:00
Yann Collet
b2ba857a4f
fuzzer: changed internal buffer size
...
to ensure no overflow during unit tests
2019-05-29 13:33:55 -07:00
Yann Collet
45eba5b030
one more conversion warning
2019-05-29 13:17:45 -07:00
Yann Collet
76116495bf
some more minor conversion warnings fixes
2019-05-29 13:14:52 -07:00
Yann Collet
c5bcb4d68b
fixed minor conversion warning
2019-05-29 12:56:27 -07:00
Yann Collet
444550defa
ensure lz4.h can be included with or without LZ4_STATIC_LINKING_ONLY in any order
...
ensure correct propagation of LZ4_DISTANCE_MAX
2019-05-29 12:21:14 -07:00
Yann Collet
b17f578a91
added comments and macros for in-place (de)compression
2019-05-29 12:06:13 -07:00
Yann Collet
4fc6b48550
added test case for in-place compression
2019-05-29 11:19:10 -07:00
Yann Collet
ab2248b90a
Merge pull request #715 from gabrielstedman/ret
...
Handle file not existing case #704
2019-05-27 11:59:23 -07:00
gabrielstedman
729eef61a1
Handle file not existing case #704
2019-05-26 15:04:45 +01:00
Niko Dzhus
2be2fe43a8
fix temporary buffer use when input size hint is respected
2019-05-24 22:08:44 +03:00