summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikos Mavrogiannopoulos <nmav@redhat.com>2016-04-05 15:50:00 +0200
committerNikos Mavrogiannopoulos <nmav@redhat.com>2016-04-05 15:52:14 +0200
commit36b0a98e8637db78911194af8fe02df4a9075388 (patch)
tree11f026d432d7b215b8702d5ed23a805f6b3a5ddb
parent725040c29da46c2f5dcf537714c16806d5b03bf0 (diff)
downloadlibtasn1-36b0a98e8637db78911194af8fe02df4a9075388.tar.gz
tests: enhance the test suite with more invalid X.509 input
The input was provided by Pascal Cuoq.
-rw-r--r--tests/Makefile.am22
-rwxr-xr-xtests/decoding-invalid-x509 (renamed from tests/decoding-inf)7
-rw-r--r--tests/invalid-x509/id-000000.der (renamed from tests/invalidPKIX.der)bin704 -> 704 bytes
-rw-r--r--tests/invalid-x509/id-000001.derbin0 -> 429 bytes
-rw-r--r--tests/invalid-x509/id-000002.derbin0 -> 709 bytes
-rw-r--r--tests/invalid-x509/id-000003.derbin0 -> 783 bytes
-rw-r--r--tests/invalid-x509/id-000004.derbin0 -> 1608 bytes
-rw-r--r--tests/invalid-x509/id-000005.derbin0 -> 1608 bytes
-rw-r--r--tests/invalid-x509/id-000006.derbin0 -> 686 bytes
-rw-r--r--tests/invalid-x509/id-000007.derbin0 -> 372 bytes
-rw-r--r--tests/invalid-x509/id-000008.derbin0 -> 585 bytes
-rw-r--r--tests/invalid-x509/id-000009.derbin0 -> 443 bytes
-rw-r--r--tests/invalid-x509/id-000010.derbin0 -> 470 bytes
-rw-r--r--tests/invalid-x509/id-000011.derbin0 -> 412 bytes
-rw-r--r--tests/invalid-x509/id-000012.derbin0 -> 374 bytes
-rw-r--r--tests/invalid-x509/id-000013.derbin0 -> 434 bytes
-rw-r--r--tests/invalid-x509/id-000014.derbin0 -> 567 bytes
-rw-r--r--tests/invalid-x509/id-000015.derbin0 -> 720 bytes
-rw-r--r--tests/invalid-x509/id-000016.derbin0 -> 698 bytes
-rw-r--r--tests/invalid-x509/id-000017.derbin0 -> 718 bytes
-rw-r--r--tests/invalid-x509/id-000018.derbin0 -> 551 bytes
-rw-r--r--tests/invalid-x509/id-000019.derbin0 -> 524 bytes
-rw-r--r--tests/invalid-x509/id-000020.derbin0 -> 568 bytes
-rw-r--r--tests/invalid-x509/id-000021.derbin0 -> 625 bytes
-rw-r--r--tests/invalid-x509/id-000022.derbin0 -> 483 bytes
-rw-r--r--tests/invalid-x509/id-000023.derbin0 -> 360 bytes
-rw-r--r--tests/invalid-x509/id-000024.derbin0 -> 360 bytes
-rw-r--r--tests/invalid-x509/id-000025.derbin0 -> 630 bytes
-rw-r--r--tests/invalid-x509/id-000026.derbin0 -> 445 bytes
-rw-r--r--tests/invalid-x509/id-000027.derbin0 -> 457 bytes
-rw-r--r--tests/invalid-x509/id-000028.derbin0 -> 430 bytes
-rw-r--r--tests/invalid-x509/id-000029.derbin0 -> 439 bytes
-rw-r--r--tests/invalid-x509/id-000030.derbin0 -> 703 bytes
-rw-r--r--tests/invalid-x509/id-000031.derbin0 -> 703 bytes
-rw-r--r--tests/invalid-x509/id-000032.derbin0 -> 469 bytes
-rw-r--r--tests/invalid-x509/id-000033.derbin0 -> 718 bytes
-rw-r--r--tests/invalid-x509/id-000034.derbin0 -> 712 bytes
-rw-r--r--tests/invalid-x509/id-000035.derbin0 -> 704 bytes
38 files changed, 26 insertions, 3 deletions
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 62d5160..729a78e 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -25,7 +25,25 @@ LDADD = ../lib/libtasn1.la ../gl/libgnu.la
EXTRA_DIST = Test_parser.asn Test_tree.asn Test_tree_asn1_tab.c \
Test_encoding.asn pkix.asn TestIndef.p12 choice.asn coding-decoding2.asn \
TestIndef2.p12 TestIndef3.der TestCertOctetOverflow.der invalidPKIX.der \
- libtasn1.supp
+ libtasn1.supp \
+ invalid-x509/id-000000.der invalid-x509/id-000001.der \
+ invalid-x509/id-000002.der invalid-x509/id-000003.der \
+ invalid-x509/id-000004.der invalid-x509/id-000005.der \
+ invalid-x509/id-000006.der invalid-x509/id-000007.der \
+ invalid-x509/id-000008.der invalid-x509/id-000009.der \
+ invalid-x509/id-000010.der invalid-x509/id-000011.der \
+ invalid-x509/id-000012.der invalid-x509/id-000013.der \
+ invalid-x509/id-000014.der invalid-x509/id-000015.der \
+ invalid-x509/id-000016.der invalid-x509/id-000017.der \
+ invalid-x509/id-000018.der invalid-x509/id-000019.der \
+ invalid-x509/id-000020.der invalid-x509/id-000021.der \
+ invalid-x509/id-000022.der invalid-x509/id-000023.der \
+ invalid-x509/id-000024.der invalid-x509/id-000025.der \
+ invalid-x509/id-000026.der invalid-x509/id-000027.der \
+ invalid-x509/id-000028.der invalid-x509/id-000029.der \
+ invalid-x509/id-000030.der invalid-x509/id-000031.der \
+ invalid-x509/id-000032.der invalid-x509/id-000033.der \
+ invalid-x509/id-000034.der invalid-x509/id-000035.der
# For crlf.
EXTRA_DIST += crlf.cer crl.der ocsp.der
@@ -40,7 +58,7 @@ check_PROGRAMS = Test_parser Test_tree Test_encoding Test_indefinite \
TESTS = Test_parser Test_tree Test_encoding Test_indefinite \
Test_errors Test_simple Test_overflow crlf threadsafety \
Test_strings Test_choice Test_encdec copynode coding-decoding2 \
- strict-der Test_choice_ocsp decoding decoding-inf
+ strict-der Test_choice_ocsp decoding decoding-invalid-x509
TESTS_ENVIRONMENT = \
ASN1PARSER=$(srcdir)/Test_parser.asn \
diff --git a/tests/decoding-inf b/tests/decoding-invalid-x509
index d3d4bee..510a27e 100755
--- a/tests/decoding-inf
+++ b/tests/decoding-invalid-x509
@@ -15,6 +15,8 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
+srcdir="${srcdir:-.}"
+
if ! test -z "${VALGRIND}";then
VALGRIND="${LIBTOOL:-libtool} --mode=execute ${VALGRIND} --error-exitcode=7 --leak-check=no"
fi
@@ -25,10 +27,13 @@ ASN1PKIX="${ASN1PKIX:-pkix.asn}"
# This tests an invalid input which caused an infinite recursion
# to certain libtasn1 versions.
-$VALGRIND $ASN1DECODING -ds $ASN1PKIX invalidPKIX.der PKIX1.Certificate
+for i in "${srcdir}/invalid-x509/"*.der;do
+$VALGRIND $ASN1DECODING -ds "$ASN1PKIX" "$i" PKIX1.Certificate >/dev/null 2>&1
if test $? != 1;then
echo "Decoding failed"
exit 1
fi
+echo "$(basename $i): ok"
+done
exit 0
diff --git a/tests/invalidPKIX.der b/tests/invalid-x509/id-000000.der
index 6fb540a..6fb540a 100644
--- a/tests/invalidPKIX.der
+++ b/tests/invalid-x509/id-000000.der
Binary files differ
diff --git a/tests/invalid-x509/id-000001.der b/tests/invalid-x509/id-000001.der
new file mode 100644
index 0000000..371a2a0
--- /dev/null
+++ b/tests/invalid-x509/id-000001.der
Binary files differ
diff --git a/tests/invalid-x509/id-000002.der b/tests/invalid-x509/id-000002.der
new file mode 100644
index 0000000..7e3b13c
--- /dev/null
+++ b/tests/invalid-x509/id-000002.der
Binary files differ
diff --git a/tests/invalid-x509/id-000003.der b/tests/invalid-x509/id-000003.der
new file mode 100644
index 0000000..a8e3b43
--- /dev/null
+++ b/tests/invalid-x509/id-000003.der
Binary files differ
diff --git a/tests/invalid-x509/id-000004.der b/tests/invalid-x509/id-000004.der
new file mode 100644
index 0000000..22f4f28
--- /dev/null
+++ b/tests/invalid-x509/id-000004.der
Binary files differ
diff --git a/tests/invalid-x509/id-000005.der b/tests/invalid-x509/id-000005.der
new file mode 100644
index 0000000..fb491cd
--- /dev/null
+++ b/tests/invalid-x509/id-000005.der
Binary files differ
diff --git a/tests/invalid-x509/id-000006.der b/tests/invalid-x509/id-000006.der
new file mode 100644
index 0000000..56380db
--- /dev/null
+++ b/tests/invalid-x509/id-000006.der
Binary files differ
diff --git a/tests/invalid-x509/id-000007.der b/tests/invalid-x509/id-000007.der
new file mode 100644
index 0000000..e788a77
--- /dev/null
+++ b/tests/invalid-x509/id-000007.der
Binary files differ
diff --git a/tests/invalid-x509/id-000008.der b/tests/invalid-x509/id-000008.der
new file mode 100644
index 0000000..172eb85
--- /dev/null
+++ b/tests/invalid-x509/id-000008.der
Binary files differ
diff --git a/tests/invalid-x509/id-000009.der b/tests/invalid-x509/id-000009.der
new file mode 100644
index 0000000..178c8c3
--- /dev/null
+++ b/tests/invalid-x509/id-000009.der
Binary files differ
diff --git a/tests/invalid-x509/id-000010.der b/tests/invalid-x509/id-000010.der
new file mode 100644
index 0000000..9879226
--- /dev/null
+++ b/tests/invalid-x509/id-000010.der
Binary files differ
diff --git a/tests/invalid-x509/id-000011.der b/tests/invalid-x509/id-000011.der
new file mode 100644
index 0000000..dffe303
--- /dev/null
+++ b/tests/invalid-x509/id-000011.der
Binary files differ
diff --git a/tests/invalid-x509/id-000012.der b/tests/invalid-x509/id-000012.der
new file mode 100644
index 0000000..cdbcfa0
--- /dev/null
+++ b/tests/invalid-x509/id-000012.der
Binary files differ
diff --git a/tests/invalid-x509/id-000013.der b/tests/invalid-x509/id-000013.der
new file mode 100644
index 0000000..d28df0e
--- /dev/null
+++ b/tests/invalid-x509/id-000013.der
Binary files differ
diff --git a/tests/invalid-x509/id-000014.der b/tests/invalid-x509/id-000014.der
new file mode 100644
index 0000000..5886113
--- /dev/null
+++ b/tests/invalid-x509/id-000014.der
Binary files differ
diff --git a/tests/invalid-x509/id-000015.der b/tests/invalid-x509/id-000015.der
new file mode 100644
index 0000000..aa78dbe
--- /dev/null
+++ b/tests/invalid-x509/id-000015.der
Binary files differ
diff --git a/tests/invalid-x509/id-000016.der b/tests/invalid-x509/id-000016.der
new file mode 100644
index 0000000..93c221d
--- /dev/null
+++ b/tests/invalid-x509/id-000016.der
Binary files differ
diff --git a/tests/invalid-x509/id-000017.der b/tests/invalid-x509/id-000017.der
new file mode 100644
index 0000000..ff2d6a1
--- /dev/null
+++ b/tests/invalid-x509/id-000017.der
Binary files differ
diff --git a/tests/invalid-x509/id-000018.der b/tests/invalid-x509/id-000018.der
new file mode 100644
index 0000000..1482e61
--- /dev/null
+++ b/tests/invalid-x509/id-000018.der
Binary files differ
diff --git a/tests/invalid-x509/id-000019.der b/tests/invalid-x509/id-000019.der
new file mode 100644
index 0000000..8760ec6
--- /dev/null
+++ b/tests/invalid-x509/id-000019.der
Binary files differ
diff --git a/tests/invalid-x509/id-000020.der b/tests/invalid-x509/id-000020.der
new file mode 100644
index 0000000..59238f8
--- /dev/null
+++ b/tests/invalid-x509/id-000020.der
Binary files differ
diff --git a/tests/invalid-x509/id-000021.der b/tests/invalid-x509/id-000021.der
new file mode 100644
index 0000000..93e9b9d
--- /dev/null
+++ b/tests/invalid-x509/id-000021.der
Binary files differ
diff --git a/tests/invalid-x509/id-000022.der b/tests/invalid-x509/id-000022.der
new file mode 100644
index 0000000..6d5a977
--- /dev/null
+++ b/tests/invalid-x509/id-000022.der
Binary files differ
diff --git a/tests/invalid-x509/id-000023.der b/tests/invalid-x509/id-000023.der
new file mode 100644
index 0000000..288f69b
--- /dev/null
+++ b/tests/invalid-x509/id-000023.der
Binary files differ
diff --git a/tests/invalid-x509/id-000024.der b/tests/invalid-x509/id-000024.der
new file mode 100644
index 0000000..69c9e61
--- /dev/null
+++ b/tests/invalid-x509/id-000024.der
Binary files differ
diff --git a/tests/invalid-x509/id-000025.der b/tests/invalid-x509/id-000025.der
new file mode 100644
index 0000000..0e5dce4
--- /dev/null
+++ b/tests/invalid-x509/id-000025.der
Binary files differ
diff --git a/tests/invalid-x509/id-000026.der b/tests/invalid-x509/id-000026.der
new file mode 100644
index 0000000..ffe5d9f
--- /dev/null
+++ b/tests/invalid-x509/id-000026.der
Binary files differ
diff --git a/tests/invalid-x509/id-000027.der b/tests/invalid-x509/id-000027.der
new file mode 100644
index 0000000..dfe00cc
--- /dev/null
+++ b/tests/invalid-x509/id-000027.der
Binary files differ
diff --git a/tests/invalid-x509/id-000028.der b/tests/invalid-x509/id-000028.der
new file mode 100644
index 0000000..88bd1e3
--- /dev/null
+++ b/tests/invalid-x509/id-000028.der
Binary files differ
diff --git a/tests/invalid-x509/id-000029.der b/tests/invalid-x509/id-000029.der
new file mode 100644
index 0000000..4fdd0e9
--- /dev/null
+++ b/tests/invalid-x509/id-000029.der
Binary files differ
diff --git a/tests/invalid-x509/id-000030.der b/tests/invalid-x509/id-000030.der
new file mode 100644
index 0000000..cd22250
--- /dev/null
+++ b/tests/invalid-x509/id-000030.der
Binary files differ
diff --git a/tests/invalid-x509/id-000031.der b/tests/invalid-x509/id-000031.der
new file mode 100644
index 0000000..78e606a
--- /dev/null
+++ b/tests/invalid-x509/id-000031.der
Binary files differ
diff --git a/tests/invalid-x509/id-000032.der b/tests/invalid-x509/id-000032.der
new file mode 100644
index 0000000..107964e
--- /dev/null
+++ b/tests/invalid-x509/id-000032.der
Binary files differ
diff --git a/tests/invalid-x509/id-000033.der b/tests/invalid-x509/id-000033.der
new file mode 100644
index 0000000..b0db73f
--- /dev/null
+++ b/tests/invalid-x509/id-000033.der
Binary files differ
diff --git a/tests/invalid-x509/id-000034.der b/tests/invalid-x509/id-000034.der
new file mode 100644
index 0000000..35d7079
--- /dev/null
+++ b/tests/invalid-x509/id-000034.der
Binary files differ
diff --git a/tests/invalid-x509/id-000035.der b/tests/invalid-x509/id-000035.der
new file mode 100644
index 0000000..6fb540a
--- /dev/null
+++ b/tests/invalid-x509/id-000035.der
Binary files differ