1 # test handling of expired root, per 3300879
3 # This uses two certs we got from store.apple.com and an old expired root
6 # The leaf cert is going to expire on April 1 2007; the intermediate cert is
7 # going to expire on Oct 24, 2011. To replace them just grab new certs from
8 # store.apple.com, or any other site with a cert chain originating with
9 # Verisign's Class 3 Public Primary Certification Authority.
12 allowUnverified = true
13 crlNetFetchEnable = false
14 certNetFetchEnable = false
15 useSystemAnchors = false
18 # Simulate pre-3300879 failure, expired root in anchors
21 echo Expired root as anchor
22 #cert = iproj_v3.100.cer
23 #cert = iproj_v3.101.cer
24 cert = applestore_v3.100.cer
25 cert = applestore_v3.101.cer
26 root = iproj_v3.102.cer
27 sslHost = store.apple.com
28 error = CSSMERR_TP_CERT_EXPIRED
29 # EXPIRED IS_IN_ANCHORS IS_ROOT
33 # Simulate pre-3300879 failure, expired root not in anchors
36 echo Expired root not in (empty) anchors
37 cert = applestore_v3.100.cer
38 cert = applestore_v3.101.cer
39 cert = iproj_v3.102.cer
40 sslHost = store.apple.com
41 error = CSSMERR_TP_INVALID_ANCHOR_CERT
42 # EXPIRED IS_IN_INPUT_CERTS IS_ROOT
46 # Ensure that this expired root successfully verifies the chain
49 echo Expired root passed as anchor, explicitly allowing expired root
50 cert = applestore_v3.100.cer
51 cert = applestore_v3.101.cer
52 root = iproj_v3.102.cer
53 allowExpiredRoot = true
54 sslHost = store.apple.com
59 echo Expired root in input chain, should be ignored in favor of system anchor
60 useSystemAnchors = true
61 cert = applestore_v3.100.cer
62 cert = applestore_v3.101.cer
63 cert = iproj_v3.102.cer
64 sslHost = store.apple.com
65 # IS_IN_ANCHORS IS_ROOT
70 echo Expired root in input chain, should be ignored in favor of system anchor, Trust Settings
71 useSystemAnchors = true
72 useTrustSettings = true
73 cert = applestore_v3.100.cer
74 cert = applestore_v3.101.cer
75 cert = iproj_v3.102.cer
76 sslHost = store.apple.com
77 # IS_ROOT TRUST_SETTINGS_FOUND_SYSTEM TRUST_SETTINGS_TRUST