diff --git a/tests/files/README b/tests/files/README index 1f47c3ce..4cabf878 100644 --- a/tests/files/README +++ b/tests/files/README @@ -76,6 +76,27 @@ good-single-lzma-flush_2.lzma has a flush marker in the middle of the file and just before EOPM. + good-multi-none-1.lzma is a basic Multi-Block Stream with two Data + Blocks and Footer Metadata Block. + + good-multi-none-2.lzma is good-multi-none-1.lzma with Total Size and + Uncompressed Size added to the Footer Metadata Block. + + good-multi-none-extra_1.lzma has the `Extra is present' flag set but + no actual Extra Records. + + good-multi-none-extra_2.lzma has two non-empty Extra Records. + + good-multi-none-extra_3.lzma has an Extra Record that has empty Data. + + good-multi-none-header_1.lzma has very minimal Header Metadata Block + with only the Metadata Flags field. + + good-multi-none-header_2.lzma has all information in both Header and + Footer Metadata Blocks. The Size of Header Metadata Block has wrong + value in Header Metadata Block, but this value must be ignored by + the decoder in case of Header Metadata Block. + 2.2. Bad Files @@ -132,6 +153,38 @@ bad-single-lzma-flush_twice.lzma has two flush markers with no data between them. + bad-multi-none-1.lzma has data after the last field in the Metadata + Block and the `Extra is present' flag is not set. + + bad-multi-none-2.lzma has wrong Total Size in Footer Metadata Block. + + bad-multi-none-3.lzma has wrong Uncompressed Size in Footer Metadata + Block. + + bad-multi-none-index_1.lzma has wrong value in the Number of Data + Blocks field. + + bad-multi-none-index_2.lzma has too short Metadata to contain all + the Index Records. + + bad-multi-none-index_3.lzma has wrong value in Total Size field in + the Index. + + bad-multi-none-index_4.lzma has wrong value in Uncompressed Size field + in the Index. + + bad-multi-none-extra_1.lzma has incomplete Extra Record at the end of + the Metadata Block. + + bad-multi-none-extra_2.lzma has incomplete variable-length integer as + Extra Record ID. + + bad-multi-none-extra_3.lzma has incomplete Extra Record at the end of + the Metadata Block. + + bad-multi-none-header_1.lzma has empty Header Metadata Block (even + the Metadata Flags field is not present). + 2.3. Malicious Files diff --git a/tests/files/bad-multi-none-1.lzma b/tests/files/bad-multi-none-1.lzma new file mode 100644 index 00000000..208e5100 Binary files /dev/null and b/tests/files/bad-multi-none-1.lzma differ diff --git a/tests/files/bad-multi-none-2.lzma b/tests/files/bad-multi-none-2.lzma new file mode 100644 index 00000000..f338e5b3 Binary files /dev/null and b/tests/files/bad-multi-none-2.lzma differ diff --git a/tests/files/bad-multi-none-3.lzma b/tests/files/bad-multi-none-3.lzma new file mode 100644 index 00000000..936ae694 Binary files /dev/null and b/tests/files/bad-multi-none-3.lzma differ diff --git a/tests/files/bad-multi-none-extra_1.lzma b/tests/files/bad-multi-none-extra_1.lzma new file mode 100644 index 00000000..ac408dc3 Binary files /dev/null and b/tests/files/bad-multi-none-extra_1.lzma differ diff --git a/tests/files/bad-multi-none-extra_2.lzma b/tests/files/bad-multi-none-extra_2.lzma new file mode 100644 index 00000000..9cb47e16 Binary files /dev/null and b/tests/files/bad-multi-none-extra_2.lzma differ diff --git a/tests/files/bad-multi-none-extra_3.lzma b/tests/files/bad-multi-none-extra_3.lzma new file mode 100644 index 00000000..9c837151 Binary files /dev/null and b/tests/files/bad-multi-none-extra_3.lzma differ diff --git a/tests/files/bad-multi-none-header_1.lzma b/tests/files/bad-multi-none-header_1.lzma new file mode 100644 index 00000000..fbad4010 Binary files /dev/null and b/tests/files/bad-multi-none-header_1.lzma differ diff --git a/tests/files/bad-multi-none-index_1.lzma b/tests/files/bad-multi-none-index_1.lzma new file mode 100644 index 00000000..b1bd0cee Binary files /dev/null and b/tests/files/bad-multi-none-index_1.lzma differ diff --git a/tests/files/bad-multi-none-index_2.lzma b/tests/files/bad-multi-none-index_2.lzma new file mode 100644 index 00000000..59d92c6c Binary files /dev/null and b/tests/files/bad-multi-none-index_2.lzma differ diff --git a/tests/files/bad-multi-none-index_3.lzma b/tests/files/bad-multi-none-index_3.lzma new file mode 100644 index 00000000..5b94972a Binary files /dev/null and b/tests/files/bad-multi-none-index_3.lzma differ diff --git a/tests/files/bad-multi-none-index_4.lzma b/tests/files/bad-multi-none-index_4.lzma new file mode 100644 index 00000000..880878a5 Binary files /dev/null and b/tests/files/bad-multi-none-index_4.lzma differ diff --git a/tests/files/good-multi-none-1.lzma b/tests/files/good-multi-none-1.lzma new file mode 100644 index 00000000..53c6afaa Binary files /dev/null and b/tests/files/good-multi-none-1.lzma differ diff --git a/tests/files/good-multi-none-2.lzma b/tests/files/good-multi-none-2.lzma new file mode 100644 index 00000000..bef06817 Binary files /dev/null and b/tests/files/good-multi-none-2.lzma differ diff --git a/tests/files/good-multi-none-extra_1.lzma b/tests/files/good-multi-none-extra_1.lzma new file mode 100644 index 00000000..ead38857 Binary files /dev/null and b/tests/files/good-multi-none-extra_1.lzma differ diff --git a/tests/files/good-multi-none-extra_2.lzma b/tests/files/good-multi-none-extra_2.lzma new file mode 100644 index 00000000..3dc8e51e Binary files /dev/null and b/tests/files/good-multi-none-extra_2.lzma differ diff --git a/tests/files/good-multi-none-extra_3.lzma b/tests/files/good-multi-none-extra_3.lzma new file mode 100644 index 00000000..6e35306a Binary files /dev/null and b/tests/files/good-multi-none-extra_3.lzma differ diff --git a/tests/files/good-multi-none-header_1.lzma b/tests/files/good-multi-none-header_1.lzma new file mode 100644 index 00000000..169b5c90 Binary files /dev/null and b/tests/files/good-multi-none-header_1.lzma differ diff --git a/tests/files/good-multi-none-header_2.lzma b/tests/files/good-multi-none-header_2.lzma new file mode 100644 index 00000000..9bec4ff5 Binary files /dev/null and b/tests/files/good-multi-none-header_2.lzma differ