summaryrefslogtreecommitdiff
path: root/contrib/libarchive/libarchive/test/test_read_format_rar5.c
diff options
context:
space:
mode:
authorMartin Matuska <mm@FreeBSD.org>2019-06-28 22:36:27 +0000
committerMartin Matuska <mm@FreeBSD.org>2019-06-28 22:36:27 +0000
commitdcb89611eb6f6b4084a59c345e95af378d29acb9 (patch)
treed4df181d738bc2510618a326b521dac31ff80031 /contrib/libarchive/libarchive/test/test_read_format_rar5.c
parenta8a6dc7af6cc285fc53ecb05418487c8018dbca5 (diff)
downloadsrc-test2-dcb89611eb6f6b4084a59c345e95af378d29acb9.tar.gz
src-test2-dcb89611eb6f6b4084a59c345e95af378d29acb9.zip
Notes
Diffstat (limited to 'contrib/libarchive/libarchive/test/test_read_format_rar5.c')
-rw-r--r--contrib/libarchive/libarchive/test/test_read_format_rar5.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/contrib/libarchive/libarchive/test/test_read_format_rar5.c b/contrib/libarchive/libarchive/test/test_read_format_rar5.c
index 1408f37c49dc..2a55e2015510 100644
--- a/contrib/libarchive/libarchive/test/test_read_format_rar5.c
+++ b/contrib/libarchive/libarchive/test/test_read_format_rar5.c
@@ -1194,3 +1194,24 @@ DEFINE_TEST(test_read_format_rar5_fileattr)
EPILOGUE();
}
+
+DEFINE_TEST(test_read_format_rar5_different_window_size)
+{
+ char buf[4096];
+ PROLOGUE("test_read_format_rar5_different_window_size.rar");
+
+ /* Return codes of those calls are ignored, because this sample file
+ * is invalid. However, the unpacker shouldn't produce any SIGSEGV
+ * errors during processing. */
+
+ (void) archive_read_next_header(a, &ae);
+ while(0 != archive_read_data(a, buf, sizeof(buf))) {}
+
+ (void) archive_read_next_header(a, &ae);
+ while(0 != archive_read_data(a, buf, sizeof(buf))) {}
+
+ (void) archive_read_next_header(a, &ae);
+ while(0 != archive_read_data(a, buf, sizeof(buf))) {}
+
+ EPILOGUE();
+}