Yann Collet
9416195221
changed error code when pos<=size condition is not respected
...
Now pointing towards src_size or dst_size,
instead of error_GENERIC.
2017-09-27 10:35:56 -07:00
Yann Collet
d56a350402
removed unsupported formats
2017-09-27 10:29:31 -07:00
Yann Collet
bfabd1d4dc
fixed zstreamtest decoding error
...
same error (wrong output buffer size) was present
on --mt and --new_api tests.
2017-09-27 01:01:11 -07:00
Yann Collet
ca306c1c84
fixed a bug in zstreamtest
...
decoder output buffer would receive a wrong size.
In previous version, ZSTD_decompressStream() would blindly trust the caller that pos <= size.
In this version, this condition is actively checked,
and the function returns an error code if this condition is not respected.
This check could also be done with an assert(),
but since this is a user-facing interface, it seems better to keep this check at runtime.
2017-09-27 00:39:41 -07:00
Yann Collet
cd53ac831b
fixed DCtx initialization error
...
now relying on initialization of dctx->format first
2017-09-26 18:26:09 -07:00
Yann Collet
4791561c4a
silence minor gcc warning -Wempty-body
...
also silence fuzz test artefacts
2017-09-26 17:57:38 -07:00
Yann Collet
91ffe71ec8
Merge pull request #864 from terrelln/long
...
Increase maximum window size
2017-09-26 16:26:29 -07:00
Yann Collet
c0dd960363
switch assert() position
2017-09-26 15:36:57 -07:00
Yann Collet
319c699991
created ZSTD_startingInputLength()
...
as suggested by @terrelln
2017-09-26 15:36:14 -07:00
Yann Collet
8d1e97ea9c
minor fixes following @terrelln comments
2017-09-26 15:06:30 -07:00
Yann Collet
bfbec3c1ae
Merge pull request #867 from terrelln/fast-fuzz
...
[fuzz] Speed up round trip tests
2017-09-26 14:57:24 -07:00
Yann Collet
df4e9bba25
fixed constant errors for gcc in c99 mode
...
C standard does not consider a `static const int` as a constant.
This is a problem for initializer, and ZSTD_STATIC_ASSERT().
Replaced by macro values
2017-09-26 14:31:06 -07:00
Yann Collet
9f0b8dfbe9
Merge branch 'dev' into newFormats
2017-09-26 14:22:39 -07:00
Nick Terrell
471aa385b3
[fuzz] Speed up round trip tests
...
* Enforce smaller maximum values for parameters
* Adjust parameters to the source size
The memory usage is reduced by about 5x, which makes the fuzzers run at
least twice as fast, even more so with ASAN/MSAN enabled.
2017-09-26 14:03:43 -07:00
Nick Terrell
c233bdbaee
Increase maximum window size
...
* Maximum window size in 32-bit mode is 1GB, since allocations for 2GB fail
on my Mac.
* Maximum window size in 64-bit mode is 2GB, since that is the largest
power of 2 that works with the overflow prevention.
* Allow `--long=windowLog` to set the window log, along with
`--zstd=wlog=#`. These options also set the window size during
decompression, but don't override `--memory=#` if it is set.
* Present a helpful error message when the window size is too large during
decompression.
* The long range matcher defaults to a hash log 7 less than the window log,
which keeps it at 20 for window log 27.
* Keep the default long range matcher window size and the default maximum
window size at 27 for the API and CLI.
* Add tests that use the maximum window size and hash size for compression
and decompression.
2017-09-26 14:00:01 -07:00
Yann Collet
3095ca8c56
fixed minor conversion warnings for g++ on Linux
...
U64 is not considered equivalent to unsigned long long
2017-09-26 13:53:50 -07:00
Yann Collet
56f1f0e3dd
write summary for --list on multiple files
2017-09-26 11:21:36 -07:00
Yann Collet
8a4d0abc1c
Merge pull request #861 from terrelln/zip
...
[fuzz][CI] Set up regression tests
2017-09-25 17:11:35 -07:00
Yann Collet
586df82a78
Merge pull request #862 from terrelln/static
...
[zstd] Backport kernel patch from @ColinIanKing
2017-09-25 17:02:40 -07:00
Yann Collet
52a1d1c6dc
added ZSTD_DCtx_reset()
2017-09-25 16:56:48 -07:00
Yann Collet
5d8fdd1641
Merge pull request #855 from terrelln/maxoff
...
[libzstd] Increase MaxOff
2017-09-25 16:34:29 -07:00
Nick Terrell
76cb38d085
[zstd] Backport kernel patch from @ColinIanKing
...
* Make the U32 table in `FSE_normalizeCount()` static.
* Patch from https://lkml.kernel.org/r/20170922145946.14316-1-colin.king@canonical.com .
* Clang makes non-static tables static anyways. gcc however, does [weird things](https://godbolt.org/g/fvTcED ).
* Benchmarks showed no difference in speed.
2017-09-25 16:18:23 -07:00
Yann Collet
f2a913862c
added ZSTD_decompress_generic_simpleArgs()
2017-09-25 15:46:34 -07:00
Yann Collet
6ee05a02b8
added ZSTD_decompress_generic()
...
same as ZSTD_decompressStream(),
just for a similar feeling as the compression side, which uses ZSTD_compress_generic()
2017-09-25 15:41:48 -07:00
Nick Terrell
917a213254
[fuzz] Determine flags based on compiler version
2017-09-25 15:32:36 -07:00
Nick Terrell
77d5bc2d62
[fuzz][CI] Add regression tests to the CI
2017-09-25 15:32:31 -07:00
Nick Terrell
11e21f23cb
[fuzz] Mention the corpora in the README
2017-09-25 15:31:38 -07:00
Nick Terrell
6bb781e0f1
[fuzz] Add regressiontest targets
2017-09-25 15:31:33 -07:00
Yann Collet
b8d4a3887f
introduced constant ZSTD_frameIdSize
...
within zstd_internal.h
This is the size of magic number.
Avoids using `4` directly in source code, which is a bit less meaningful.
2017-09-25 15:26:18 -07:00
Yann Collet
044fb4c057
implemented magic-less frame decoder
2017-09-25 15:12:09 -07:00
Yann Collet
62568c9a42
added capability to generate magic-less frames
...
decoder not implemented yet
2017-09-25 14:26:26 -07:00
Nick Terrell
bbe77212ef
[libzstd] Increase MaxOff
2017-09-25 13:36:18 -07:00
Nick Terrell
bfad5568b5
[fuzz] Make simple_round_trip compile cleanly
2017-09-25 13:28:45 -07:00
Nick Terrell
23199b6daf
[fuzz] Fix fuzz.py env flags parsing
2017-09-25 13:28:18 -07:00
Nick Terrell
1c23b64049
[fuzz] fuzz.py can minimize and zip corpora
...
* "minimize" minimizes the corpora into an output directory.
* "zip" zips up the minimized corpora, which are ready to deploy.
2017-09-25 12:04:12 -07:00
Yann Collet
96f0cde31a
minor function rename
...
ZSTD_estimateCStreamSize_advanced_usingCParams -> ZSTD_estimateCStreamSize_usingCParams
_usingX is clear.
_advanced feels redundant
2017-09-24 16:47:02 -07:00
Yann Collet
7c3dea42ce
added prototypes for advanced parameters for decompression API
...
required to decode custom formats
2017-09-24 15:57:29 -07:00
Yann Collet
e60f48c549
Merge branch 'dev' into newFormats
2017-09-24 14:33:37 -07:00
W. Felix Handte
360238733a
Adds LZ4 support by default if LZ4 is available
...
Simple makefile change + quick typename change
Test:
make clean
make
# successfully produces binary without lz4 support
make clean
# with flags to pick up my lz4 build
make MOREFLAGS="-L/home/felixh/prog/lz4/lib -I/home/felixh/prog/lz4/lib"
# successfully produces binary with lz4 support
echo "TEST TEST TEST THIS IS A TEST STRING PLEASE TEST THIS PLEASE OK THANK YOU" | \
./lz4/lz4 | \
LD_LIBRARY_PATH=/home/felixh/prog/lz4/lib ./zstd/zstd -d
# successfully prints TEST TEST TEST THIS IS A TEST STRING PLEASE TEST THIS PLEASE OK THANK YOU
2017-09-22 13:28:56 -07:00
Yann Collet
8977224b9b
Merge pull request #859 from terrelln/31
...
Prepare for ZSTD_WINDOWLOG_MAX == 31
2017-09-22 09:01:39 -07:00
Yann Collet
14946af10c
Merge pull request #858 from facebook/controlSize
...
added control of frame content size at end of decompression
2017-09-21 17:24:43 -07:00
Nick Terrell
d6abb28951
Prepare for ZSTD_WINDOWLOG_MAX == 31
2017-09-21 17:18:41 -07:00
Yann Collet
cd3115b284
added control from frame content size at end of decompression
...
adding check at end of single-pass ZSTD_decompressFrame().
Check within ZSTD_decompressContinue() was already added in a previous patch : b3f33ccfb3
2017-09-21 16:21:10 -07:00
Yann Collet
645563583e
Merge branch 'dev' into newFormats
2017-09-21 16:08:06 -07:00
Yann Collet
f97c2dbd39
created ZSTD_format declaration
2017-09-21 16:07:29 -07:00
Yann Collet
da74aabc00
Merge pull request #850 from terrelln/fse-optimal
...
[fse] Fix FSE_optimalTableLog() for srcSize==1
2017-09-19 14:59:21 -07:00
Yann Collet
c399ab4804
Merge pull request #849 from terrelln/30
...
[bitstream] Allow adding 31 bits at a time
2017-09-19 14:25:10 -07:00
Yann Collet
a361e9af08
Merge pull request #857 from terrelln/bad-assert
...
Fix minor fuzz test failures
2017-09-19 14:22:08 -07:00
Nick Terrell
74718d7e43
[bitstream] Allow adding 31 bits at a time
2017-09-19 13:57:33 -07:00
Nick Terrell
6c9ed76676
[ldm] Fix corner case where minMatch < 8
...
There is a potential read buffer overflow when minMatch < 8.
fix-fuzz-failure
2017-09-19 13:49:37 -07:00