1526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt#!/bin/sh
2526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
3526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt# Public Key Interoperability Test Suite (PKITS)
4526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt# http://csrc.nist.gov/pki/testing/x509paths.html
5526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt# http://csrc.nist.gov/pki/testing/PKITS_data.zip
6526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
7526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtif [ -z "$1" ]; then
8526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt    echo "usage: $0 <path to root test directory>"
9526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt    exit 1
10526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtfi
11526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
12526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry ShmidtTESTS=$1
13526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
14526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtif [ ! -d $TESTS ]; then
15526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt    echo "Not a directory: $TESTS"
16526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt    exit 1
17526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtfi
18526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
19526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry ShmidtX509TEST="$PWD/test_x509v3 -v"
20526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry ShmidtTMPOUT="$PWD/test_x509v3_nist2.out"
21526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
22526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt# TODO: add support for validating CRLs
23526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
24526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry ShmidtSUCCESS=""
25526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry ShmidtFAILURE=""
26526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
27526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtfunction run_test
28526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt{
29526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt    NUM=$1
30526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt    RES=$2
31526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt    shift 2
32526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt    $X509TEST "$@" TrustAnchorRootCertificate.crt > $TMPOUT.$NUM
33526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt    VALRES=$?
34526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt    OK=0
35526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt    if [ $RES -eq 0 ]; then
36526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	# expecting success
37526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	if [ $VALRES -eq 0 ]; then
38526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	    OK=1
39526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	else
40526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	    echo "$NUM failed - expected validation success"
41526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	    OK=0
42526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	fi
43526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt    else
44526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	# expecting failure
45526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	if [ $VALRES -eq 0 ]; then
46526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	    echo "$NUM failed - expected validation failure"
47526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	    OK=0
48526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	else
49526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	    REASON=`grep "Certificate chain validation failed: " $TMPOUT.$NUM`
50526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	    if [ $? -eq 0 ]; then
51526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt		REASONNUM=`echo "$REASON" | colrm 1 37`
52526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt		if [ $REASONNUM -eq $RES ]; then
53526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt		    OK=1
54526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt		else
55526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt		    echo "$NUM failed - expected validation result $RES; result was $REASONNUM"
56526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt		    OK=0
57526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt		fi
58526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	    else
59526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt		echo "$NUM failed - expected validation failure; other type of error detected"
60526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt		OK=0
61526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	    fi
62526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	fi
63526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt    fi
64526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt    if [ $OK -eq 1 ]; then
65526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	rm $TMPOUT.$NUM
66526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	SUCCESS="$SUCCESS $NUM"
67526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt    else
68526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	FAILURE="$FAILURE $NUM"
69526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt    fi
70526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt}
71526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
72526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtpushd $TESTS/certs
73526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
74526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.1.1 0 ValidCertificatePathTest1EE.crt GoodCACert.crt
75526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.1.2 1 InvalidCASignatureTest2EE.crt BadSignedCACert.crt
76526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.1.3 1 InvalidEESignatureTest3EE.crt GoodCACert.crt
77526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
78526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.2.1 4 InvalidCAnotBeforeDateTest1EE.crt BadnotBeforeDateCACert.crt
79526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.2.2 4 InvalidEEnotBeforeDateTest2EE.crt GoodCACert.crt
80526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.2.3 0 Validpre2000UTCnotBeforeDateTest3EE.crt GoodCACert.crt
81526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.2.4 0 ValidGeneralizedTimenotBeforeDateTest4EE.crt GoodCACert.crt
82526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.2.5 4 InvalidCAnotAfterDateTest5EE.crt BadnotAfterDateCACert.crt
83526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.2.6 4 InvalidEEnotAfterDateTest6EE.crt GoodCACert.crt
84526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.2.7 4 Invalidpre2000UTCEEnotAfterDateTest7EE.crt GoodCACert.crt
85526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.2.8 0 ValidGeneralizedTimenotAfterDateTest8EE.crt GoodCACert.crt
86526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
87526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.3.1 5 InvalidNameChainingTest1EE.crt GoodCACert.crt
88526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.3.2 5 InvalidNameChainingOrderTest2EE.crt NameOrderingCACert.crt
89526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.3.3 0 ValidNameChainingWhitespaceTest3EE.crt GoodCACert.crt
90526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.3.4 0 ValidNameChainingWhitespaceTest4EE.crt GoodCACert.crt
91526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.3.5 0 ValidNameChainingCapitalizationTest5EE.crt GoodCACert.crt
92526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.3.6 0 ValidNameUIDsTest6EE.crt UIDCACert.crt
93526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.3.7 0 ValidRFC3280MandatoryAttributeTypesTest7EE.crt RFC3280MandatoryAttributeTypesCACert.crt
94526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.3.8 0 ValidRFC3280OptionalAttributeTypesTest8EE.crt RFC3280OptionalAttributeTypesCACert.crt
95526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.3.9 0 ValidUTF8StringEncodedNamesTest9EE.crt UTF8StringEncodedNamesCACert.crt
96526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.3.10 0 ValidRolloverfromPrintableStringtoUTF8StringTest10EE.crt RolloverfromPrintableStringtoUTF8StringCACert.crt
97526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.3.11 0 ValidUTF8StringCaseInsensitiveMatchTest11EE.crt UTF8StringCaseInsensitiveMatchCACert.crt
98526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
99526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.4.1 1 InvalidMissingCRLTest1EE.crt NoCRLCACert.crt
100526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt# skip rest of 4.4.x tests since CRLs are not yet supported
101526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
102526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.5.1 0 ValidBasicSelfIssuedOldWithNewTest1EE.crt BasicSelfIssuedNewKeyOldWithNewCACert.crt BasicSelfIssuedNewKeyCACert.crt
103526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.5.2 3 InvalidBasicSelfIssuedOldWithNewTest2EE.crt BasicSelfIssuedNewKeyOldWithNewCACert.crt BasicSelfIssuedNewKeyCACert.crt
104526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.5.3 0 ValidBasicSelfIssuedNewWithOldTest3EE.crt BasicSelfIssuedOldKeyNewWithOldCACert.crt BasicSelfIssuedOldKeyCACert.crt
105526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.5.4 0 ValidBasicSelfIssuedNewWithOldTest4EE.crt BasicSelfIssuedOldKeyNewWithOldCACert.crt BasicSelfIssuedOldKeyCACert.crt
106526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.5.5 3 InvalidBasicSelfIssuedNewWithOldTest5EE.crt BasicSelfIssuedOldKeyNewWithOldCACert.crt BasicSelfIssuedOldKeyCACert.crt
107526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.5.6 0 ValidBasicSelfIssuedCRLSigningKeyTest6EE.crt BasicSelfIssuedCRLSigningKeyCRLCert.crt BasicSelfIssuedCRLSigningKeyCACert.crt
108526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.5.7 3 InvalidBasicSelfIssuedCRLSigningKeyTest7EE.crt BasicSelfIssuedCRLSigningKeyCRLCert.crt BasicSelfIssuedCRLSigningKeyCACert.crt
109526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.5.8 1 InvalidBasicSelfIssuedCRLSigningKeyTest8EE.crt BasicSelfIssuedCRLSigningKeyCRLCert.crt BasicSelfIssuedCRLSigningKeyCACert.crt
110526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
111526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.6.1 1 InvalidMissingbasicConstraintsTest1EE.crt MissingbasicConstraintsCACert.crt
112526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.6.2 1 InvalidcAFalseTest2EE.crt basicConstraintsCriticalcAFalseCACert.crt
113526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.6.3 1 InvalidcAFalseTest3EE.crt basicConstraintsNotCriticalcAFalseCACert.crt
114526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.6.4 0 ValidbasicConstraintsNotCriticalTest4EE.crt basicConstraintsNotCriticalCACert.crt
115526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.6.5 1 InvalidpathLenConstraintTest5EE.crt pathLenConstraint0subCACert.crt pathLenConstraint0CACert.crt
116526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.6.6 1 InvalidpathLenConstraintTest6EE.crt pathLenConstraint0subCACert.crt pathLenConstraint0CACert.crt
117526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.6.7 0 ValidpathLenConstraintTest7EE.crt pathLenConstraint0CACert.crt
118526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.6.8 0 ValidpathLenConstraintTest8EE.crt pathLenConstraint0CACert.crt
119526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.6.9 1 InvalidpathLenConstraintTest9EE.crt pathLenConstraint6subsubCA00Cert.crt pathLenConstraint6subCA0Cert.crt pathLenConstraint6CACert.crt
120526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.6.10 1 InvalidpathLenConstraintTest10EE.crt pathLenConstraint6subsubCA00Cert.crt pathLenConstraint6subCA0Cert.crt pathLenConstraint6CACert.crt
121526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.6.11 1 InvalidpathLenConstraintTest11EE.crt pathLenConstraint6subsubsubCA11XCert.crt pathLenConstraint6subsubCA11Cert.crt pathLenConstraint6subCA1Cert.crt pathLenConstraint6CACert.crt
122526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.6.12 1 InvalidpathLenConstraintTest12EE.crt pathLenConstraint6subsubsubCA11XCert.crt pathLenConstraint6subsubCA11Cert.crt pathLenConstraint6subCA1Cert.crt pathLenConstraint6CACert.crt
123526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.6.13 0 ValidpathLenConstraintTest13EE.crt pathLenConstraint6subsubsubCA41XCert.crt pathLenConstraint6subsubCA41Cert.crt pathLenConstraint6subCA4Cert.crt pathLenConstraint6CACert.crt
124526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.6.14 0 ValidpathLenConstraintTest14EE.crt pathLenConstraint6subsubsubCA41XCert.crt pathLenConstraint6subsubCA41Cert.crt pathLenConstraint6subCA4Cert.crt pathLenConstraint6CACert.crt
125526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.6.15 0 ValidSelfIssuedpathLenConstraintTest15EE.crt pathLenConstraint0SelfIssuedCACert.crt pathLenConstraint0CACert.crt
126526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.6.16 1 InvalidSelfIssuedpathLenConstraintTest16EE.crt pathLenConstraint0subCA2Cert.crt pathLenConstraint0SelfIssuedCACert.crt pathLenConstraint0CACert.crt
127526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.6.17 0 ValidSelfIssuedpathLenConstraintTest17EE.crt pathLenConstraint1SelfIssuedsubCACert.crt pathLenConstraint1subCACert.crt pathLenConstraint1SelfIssuedCACert.crt pathLenConstraint1CACert.crt
128526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
129526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.7.1 1 InvalidkeyUsageCriticalkeyCertSignFalseTest1EE.crt keyUsageCriticalkeyCertSignFalseCACert.crt
130526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.7.2 1 InvalidkeyUsageNotCriticalkeyCertSignFalseTest2EE.crt keyUsageNotCriticalkeyCertSignFalseCACert.crt
131526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.7.3 0 ValidkeyUsageNotCriticalTest3EE.crt keyUsageNotCriticalCACert.crt
132526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.7.4 1 InvalidkeyUsageCriticalcRLSignFalseTest4EE.crt keyUsageCriticalcRLSignFalseCACert.crt
133526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.7.5 1 InvalidkeyUsageNotCriticalcRLSignFalseTest5EE.crt keyUsageNotCriticalcRLSignFalseCACert.crt
134526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
135526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.8.1 0 ValidCertificatePathTest1EE.crt GoodCACert.crt
136526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.8.2 0 AllCertificatesNoPoliciesTest2EE.crt NoPoliciesCACert.crt
137526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.8.3 0 DifferentPoliciesTest3EE.crt PoliciesP2subCACert.crt GoodCACert.crt
138526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.8.4 0 DifferentPoliciesTest4EE.crt GoodsubCACert.crt GoodCACert.crt
139526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.8.5 0 DifferentPoliciesTest5EE.crt PoliciesP2subCA2Cert.crt GoodCACert.crt
140526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.8.6 0 OverlappingPoliciesTest6EE.crt PoliciesP1234subsubCAP123P12Cert.crt PoliciesP1234subCAP123Cert.crt PoliciesP1234CACert.crt
141526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.8.7 0 DifferentPoliciesTest7EE.crt PoliciesP123subsubCAP12P1Cert.crt PoliciesP123subCAP12Cert.crt PoliciesP123CACert.crt
142526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.8.8 0 DifferentPoliciesTest8EE.crt PoliciesP12subsubCAP1P2Cert.crt PoliciesP12subCAP1Cert.crt PoliciesP12CACert.crt
143526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.8.9 0 DifferentPoliciesTest9EE.crt PoliciesP123subsubsubCAP12P2P1Cert.crt PoliciesP123subsubCAP12P2Cert.crt PoliciesP123subCAP12Cert.crt PoliciesP123CACert.crt
144526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.8.10 0 AllCertificatesSamePoliciesTest10EE.crt PoliciesP12CACert.crt
145526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.8.11 0 AllCertificatesanyPolicyTest11EE.crt anyPolicyCACert.crt
146526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.8.12 0 DifferentPoliciesTest12EE.crt PoliciesP3CACert.crt
147526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.8.13 0 AllCertificatesSamePoliciesTest13EE.crt PoliciesP123CACert.crt
148526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.8.14 0 AnyPolicyTest14EE.crt anyPolicyCACert.crt
149526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.8.15 0 UserNoticeQualifierTest15EE.crt
150526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.8.16 0 UserNoticeQualifierTest16EE.crt GoodCACert.crt
151526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.8.17 0 UserNoticeQualifierTest17EE.crt GoodCACert.crt
152526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.8.18 0 UserNoticeQualifierTest18EE.crt PoliciesP12CACert.crt
153526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.8.19 0 UserNoticeQualifierTest19EE.crt TrustAnchorRootCertificate.crt
154526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.8.20 0 CPSPointerQualifierTest20EE.crt GoodCACert.crt
155526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
156526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtif false; then
157526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt# DSA tests
158526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtrun_test 4.1.4 0 ValidDSASignaturesTest4EE.crt DSACACert.crt
159526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtfi
160526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
161526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtpopd
162526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
163526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
164526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtecho "Successful tests:$SUCCESS"
165526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtecho "Failed tests:$FAILURE"
166