summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--test/d2i-tests/bad-cms.der1
-rw-r--r--test/recipes/25-test_d2i.t9
2 files changed, 9 insertions, 1 deletions
diff --git a/test/d2i-tests/bad-cms.der b/test/d2i-tests/bad-cms.der
new file mode 100644
index 0000000000..19cd3cc3f2
--- /dev/null
+++ b/test/d2i-tests/bad-cms.der
@@ -0,0 +1 @@
+0 *†H†÷   010 \ No newline at end of file
diff --git a/test/recipes/25-test_d2i.t b/test/recipes/25-test_d2i.t
index 9db0b2be45..e663534c4d 100644
--- a/test/recipes/25-test_d2i.t
+++ b/test/recipes/25-test_d2i.t
@@ -15,7 +15,7 @@ use OpenSSL::Test qw/:DEFAULT srctop_file/;
setup("test_d2i");
-plan tests => 13;
+plan tests => 14;
ok(run(test(["d2i_test", "X509", "decode",
srctop_file('test','d2i-tests','bad_cert.der')])),
@@ -79,3 +79,10 @@ ok(run(test(["d2i_test", "ASN1_INTEGER", "decode",
ok(run(test(["d2i_test", "ASN1_INTEGER", "decode",
srctop_file('test','d2i-tests','bad-int-padminus1.der')])),
"Running d2i_test bad-int-padminus1.der INTEGER");
+
+# Invalid CMS structure with decode error in CHOICE value.
+# Test for CVE-2016-7053
+
+ok(run(test(["d2i_test", "CMS_ContentInfo", "decode",
+ srctop_file('test','d2i-tests','bad-cms.der')])),
+ "Running d2i_test bad-cms.der CMS ContentInfo");