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
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
99f1721ff5
replaced while(1)
...
by for (;;)
just to please Visual Studio C4127 .
2019-05-31 12:01:33 -07: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
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
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
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
gabrielstedman
729eef61a1
Handle file not existing case #704
2019-05-26 15:04:45 +01:00
Yann Collet
e2527ad725
updated tests
...
- only play listTest with `make test`, not `make all` which is limited to build
- update `clangtest`, so that it's possible to disable O3 optimization, for faster processing
2019-05-16 16:46:16 -07:00
gstedman
81081f9b2d
List mode improvements.
...
Improve formatting
Include static assert
Use UTIL_fseek to handle potential fseek limitation
Be explicit when refusing to read from stdin
Properly free dctx after use
Include valgrind tests
2019-05-16 20:53:29 +01:00
gstedman
98a86c8ef6
Add multiframe report to --list command
2019-05-15 21:13:19 +01:00
Dmitry V. Levin
0d3f85df65
test-amalgamation: split the rule
...
Change test-amalgamation to follow each-rule-makes-a-single-target idiom.
Fixes: a7e8d394
("[amalgamation] add test")
2019-04-23 21:18:11 +00:00
Dmitry V. Levin
8069d2ae6f
test-amalgamation: fix compilation options
...
Use the same compilation options to compile lz4_all.c and other object files.
Fixes: a7e8d394
("[amalgamation] add test")
2019-04-23 21:18:11 +00:00
Dmitry V. Levin
10726d4c56
test-amalgamation: use a single cat command
...
Use the list of prerequisites instead of listing those files manually,
this way they will never fall out of sync.
Also update the amalgamation example to use a single cat command.
Fixes: a7e8d394
("[amalgamation] add test")
Fixes: b192c86b
("[amalgamation] lz4frame.c")
2019-04-23 21:18:11 +00:00
Dmitry V. Levin
7937e86255
test-amalgamation: fix the list of prerequisites
...
Add $(LZ4DIR)/lz4frame.c to the list of prerequisites as the rule uses
that file.
Fixes: b192c86b
("[amalgamation] lz4frame.c")
2019-04-23 21:18:11 +00:00
JPeterMugaas
7136489d33
More build imrpvements
...
Moved a few other tests to Makefiles.inc. Other things might need to go there.
Made a test for symlink appropriateness. Windows can NOT handle them the same way Unix-like operating systems do (if at all). This is mostly the same as the Visual C projects.
embed version info into .dll and .exes that are redistributed.
2019-04-23 07:44:00 -04:00
Yann Collet
291b3d8b7e
Merge pull request #691 from lz4/list
...
--list
2019-04-22 17:43:01 -07:00
Yann Collet
c4fe7a2047
Merge pull request #689 from JPeterMugaas/jpm-makefile
...
Jpm makefile - as described in https://github.com/lz4/lz4/issues/688
2019-04-22 15:29:50 -07:00
Yann Collet
0d4c885abb
refactored --list function
...
better handling of special conditions,
better scoping of variables.
Also : updated man page
2019-04-22 14:01:19 -07:00
JPeterMugaas
2acddd9918
Fix a test for mingw
2019-04-22 16:06:04 -04:00
JPeterMugaas
b48f823f90
Try to put some tests I made in ONE place. I also moved a test for "install" in one place to try to isolate it.
2019-04-22 15:48:48 -04:00
JPeterMugaas
773b66547f
Initial commits from diff I submitted earlier
2019-04-22 13:48:59 -04:00
Yann Collet
22fae16c6f
ensure tests work when stdout
is not the console
...
ensure this case is continuously tested on travis.
Update documentation on implicit output,
invite to not rely on implicit output in scripts.
2019-04-21 17:01:03 -07:00
Yann Collet
467e352de9
tests/Makefile : created CMP variable
...
for potential redirection, if need be.
note : should probably converge all comparison operations onto CMP
2019-04-21 12:42:13 -07:00
Yann Collet
5f8ac02b77
cli: display a warning whenever default output is stdout while input != stdin
...
This behavior has been preserved for compatibility with existing ecosystem.
But it's problematic, as some environment start `lz4` without identifying stdout as console by default,
leading to a change of behavior for a same line of script.
A more sensible policy would be to default to stdout only when input is stdin.
Soft change for the time being : keep the behavior, just print a warning message.
User should prefer `-c` to explicitly select `stdout`.
Also : updated tests in Makefile to explicitly select `stdout` with `-c`.
2019-04-19 17:08:40 -07:00
Yann Collet
ae199124e5
fixed read-after input in LZ4_decompress_safe()
2019-04-18 18:50:51 -07:00
Yann Collet
4790994568
fuzzer : reduced stack usage
2019-04-18 17:12:14 -07:00
Yann Collet
6cb084ed36
fuzzer: reduce stack usage to please Visual static analyzer
2019-04-18 17:01:36 -07:00
Yann Collet
0b876db6d4
address a few minor Visual warnings
...
and created target cxx17build
2019-04-18 16:07:16 -07:00
Yann Collet
4f6de46f60
fix several minor static analyzer warnings
2019-04-18 12:05:50 -07:00
Yann Collet
3f558163ad
fuzzer: fixed scan-build leak warning
...
the program exit(),
so there is no need to track and dealloc every buffer.
2019-04-18 10:38:51 -07:00
Yann Collet
8f0e744063
fuzzer: fix explicit cast for C++
2019-04-17 15:44:14 -07:00
Yann Collet
1ed69691a1
fuzzer: added tests to detect LZ4_decompress_fast() out of bound read
2019-04-17 13:31:24 -07:00
Norm Green
1848ea5cbd
Fix AIX errors/warnings
2019-04-17 09:20:09 -07:00
Yann Collet
0d4a974639
Merge branch 'dev' into fixframe
2019-04-15 11:18:33 -07:00
Yann Collet
ac5d2629c1
added a fake initialization to please an analyzer
...
which is unable to understand that the variable is necessarily initialized
in spite of an assert just before.
2019-04-15 11:17:35 -07:00
Yann Collet
ce0f316989
fix fuzzer tests on dirty context
...
context is no longer dirty after a failed compressed block.
Actually, all indexes are fine.
It remains compatible with continued streaming, and reset*_fast().
2019-04-15 11:12:54 -07:00
Yann Collet
98e5c0062f
added more margin for canary in frametest
2019-04-15 10:44:46 -07:00
Yann Collet
3ab916c6a2
frametest: removed uninitialized warning
...
was a false positive, but better remove it anyway
2019-04-15 10:14:36 -07:00
Yann Collet
9c41e5804e
assert() the failed test
...
ensure canary remains within buffer limits
2019-04-15 02:11:59 -07:00
Yann Collet
c222dd9010
fixed frametest
...
One test could write a canary value out of bound
in exceptional conditions involving multiple flushes
triggered by -s3421 -t462948.
2019-04-15 01:54:40 -07:00
Yann Collet
63bfb64b80
and even more visual conversion warnings
2019-04-12 17:40:23 -07:00
Yann Collet
c7554c3004
fixed minor Visual conversion warnings
2019-04-12 17:03:28 -07:00