busybox/testsuite/unlzma.tests
Denys Vlasenko 04f052c56d unlzma: fix a case where we could read before beginning of buffer
Testcase:

  21 01 01 00 00 00 00 00 e7 01 01 01 ef 00 df b6
  00 17 02 10 11 0f ff 00 16 00 00

Unfortunately, the bug is not reliably causing a segfault,
the behavior depends on what's in memory before the buffer.

function                                             old     new   delta
unpack_lzma_stream                                  2762    2768      +6

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2021-06-15 15:14:00 +02:00

31 lines
695 B
Bash
Executable File

#!/bin/sh
. ./testing.sh
# testing "test name" "commands" "expected result" "file input" "stdin"
# file input will be file called "input"
# test can create a file "actual" instead of writing to stdout
# Damaged encrypted streams
testing "unlzma (bad archive 1)" \
"unlzma <unlzma_issue_1.lzma 2>&1 >/dev/null; echo \$?" \
"unlzma: corrupted data
1
" "" ""
# Damaged encrypted streams
testing "unlzma (bad archive 2)" \
"unlzma <unlzma_issue_2.lzma 2>&1 >/dev/null; echo \$?" \
"unlzma: corrupted data
1
" "" ""
# Damaged encrypted streams
testing "unlzma (bad archive 3)" \
"unlzma <unlzma_issue_3.lzma 2>&1 >/dev/null; echo \$?" \
"unlzma: corrupted data
1
" "" ""
exit $FAILCOUNT