mirror of
https://github.com/facebook/zstd.git
synced 2025-03-06 16:56:49 +02:00
detect extraneous bytes in the Sequences section
when nbSeq == 0. Reported by @ip7z
This commit is contained in:
parent
c8888d9bf4
commit
b46236278a
@ -720,6 +720,8 @@ size_t ZSTD_decodeSeqHeaders(ZSTD_DCtx* dctx, int* nbSeqPtr,
|
||||
|
||||
if (nbSeq == 0) {
|
||||
/* No sequence : section ends immediately */
|
||||
RETURN_ERROR_IF(ip != iend, corruption_detected,
|
||||
"extraneous data present in the Sequences section");
|
||||
return (size_t)(ip - istart);
|
||||
}
|
||||
|
||||
|
11
tests/cli-tests/decompression/detectErrors.sh
Executable file
11
tests/cli-tests/decompression/detectErrors.sh
Executable file
@ -0,0 +1,11 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
GOLDEN_DIR="$ZSTD_REPO_DIR/tests/golden-decompression-errors/"
|
||||
|
||||
for file in "$GOLDEN_DIR"/*; do
|
||||
zstd -t $file && die "should have detected an error"
|
||||
done
|
||||
exit 0
|
||||
|
@ -444,6 +444,11 @@ $DIFF -s tmp1 tmp
|
||||
touch tmp_empty
|
||||
zstd -d -o tmp2 "$TESTDIR/golden-decompression/empty-block.zst"
|
||||
$DIFF -s tmp2 tmp_empty
|
||||
|
||||
zstd -t "$TESTDIR/golden-decompression/zeroSeq_2B.zst"
|
||||
|
||||
zstd -t "$TESTDIR/golden-decompression-errors/zeroSeq_extraneous.zst" && die "invalid Sequences section should have been detected"
|
||||
|
||||
rm -f tmp*
|
||||
|
||||
println "\n===> compress multiple files"
|
||||
|
Loading…
x
Reference in New Issue
Block a user