summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorjsing <>2020-07-14 18:29:19 +0000
committerjsing <>2020-07-14 18:29:19 +0000
commit5833b446d446315876f10a00d069f4981c6cf97c (patch)
tree7af6de9194f6dcf712139468c54eaa6876fa3e60 /src
parentf133c373915d3c0ab63b4365469c5023561f3443 (diff)
downloadopenbsd-5833b446d446315876f10a00d069f4981c6cf97c.tar.gz
openbsd-5833b446d446315876f10a00d069f4981c6cf97c.tar.bz2
openbsd-5833b446d446315876f10a00d069f4981c6cf97c.zip
Provide generated certificate bundles and roots for regress.
ok beck@ tb@
Diffstat (limited to 'src')
-rw-r--r--src/regress/lib/libcrypto/certs/10a/bundle.pem65
-rw-r--r--src/regress/lib/libcrypto/certs/10a/roots.pem42
-rw-r--r--src/regress/lib/libcrypto/certs/10b/bundle.pem65
-rw-r--r--src/regress/lib/libcrypto/certs/10b/roots.pem42
-rw-r--r--src/regress/lib/libcrypto/certs/11a/bundle.pem87
-rw-r--r--src/regress/lib/libcrypto/certs/11a/roots.pem42
-rw-r--r--src/regress/lib/libcrypto/certs/11b/bundle.pem87
-rw-r--r--src/regress/lib/libcrypto/certs/11b/roots.pem42
-rw-r--r--src/regress/lib/libcrypto/certs/12a/bundle.pem65
-rw-r--r--src/regress/lib/libcrypto/certs/12a/roots.pem43
-rw-r--r--src/regress/lib/libcrypto/certs/13a/bundle.pem66
-rw-r--r--src/regress/lib/libcrypto/certs/13a/roots.pem42
-rw-r--r--src/regress/lib/libcrypto/certs/1a/bundle.pem21
-rw-r--r--src/regress/lib/libcrypto/certs/1a/roots.pem21
-rw-r--r--src/regress/lib/libcrypto/certs/2a/bundle.pem44
-rw-r--r--src/regress/lib/libcrypto/certs/2a/roots.pem21
-rw-r--r--src/regress/lib/libcrypto/certs/2b/bundle.pem22
-rw-r--r--src/regress/lib/libcrypto/certs/2b/roots.pem21
-rw-r--r--src/regress/lib/libcrypto/certs/3a/bundle.pem88
-rw-r--r--src/regress/lib/libcrypto/certs/3a/roots.pem21
-rw-r--r--src/regress/lib/libcrypto/certs/3b/bundle.pem66
-rw-r--r--src/regress/lib/libcrypto/certs/3b/roots.pem21
-rw-r--r--src/regress/lib/libcrypto/certs/3c/bundle.pem66
-rw-r--r--src/regress/lib/libcrypto/certs/3c/roots.pem21
-rw-r--r--src/regress/lib/libcrypto/certs/3d/bundle.pem66
-rw-r--r--src/regress/lib/libcrypto/certs/3d/roots.pem21
-rw-r--r--src/regress/lib/libcrypto/certs/3e/bundle.pem88
-rw-r--r--src/regress/lib/libcrypto/certs/3e/roots.pem21
-rw-r--r--src/regress/lib/libcrypto/certs/4a/bundle.pem66
-rw-r--r--src/regress/lib/libcrypto/certs/4a/roots.pem42
-rw-r--r--src/regress/lib/libcrypto/certs/4b/bundle.pem66
-rw-r--r--src/regress/lib/libcrypto/certs/4b/roots.pem21
-rw-r--r--src/regress/lib/libcrypto/certs/4c/bundle.pem66
-rw-r--r--src/regress/lib/libcrypto/certs/4c/roots.pem21
-rw-r--r--src/regress/lib/libcrypto/certs/4d/bundle.pem44
-rw-r--r--src/regress/lib/libcrypto/certs/4d/roots.pem42
-rw-r--r--src/regress/lib/libcrypto/certs/4e/bundle.pem44
-rw-r--r--src/regress/lib/libcrypto/certs/4e/roots.pem42
-rw-r--r--src/regress/lib/libcrypto/certs/4f/bundle.pem66
-rw-r--r--src/regress/lib/libcrypto/certs/4f/roots.pem42
-rw-r--r--src/regress/lib/libcrypto/certs/4g/bundle.pem66
-rw-r--r--src/regress/lib/libcrypto/certs/4g/roots.pem21
-rw-r--r--src/regress/lib/libcrypto/certs/4h/bundle.pem66
-rw-r--r--src/regress/lib/libcrypto/certs/4h/roots.pem21
-rw-r--r--src/regress/lib/libcrypto/certs/5a/bundle.pem88
-rw-r--r--src/regress/lib/libcrypto/certs/5a/roots.pem42
-rw-r--r--src/regress/lib/libcrypto/certs/5b/bundle.pem88
-rw-r--r--src/regress/lib/libcrypto/certs/5b/roots.pem21
-rw-r--r--src/regress/lib/libcrypto/certs/5c/bundle.pem88
-rw-r--r--src/regress/lib/libcrypto/certs/5c/roots.pem21
-rw-r--r--src/regress/lib/libcrypto/certs/5d/bundle.pem66
-rw-r--r--src/regress/lib/libcrypto/certs/5d/roots.pem42
-rw-r--r--src/regress/lib/libcrypto/certs/5e/bundle.pem66
-rw-r--r--src/regress/lib/libcrypto/certs/5e/roots.pem42
-rw-r--r--src/regress/lib/libcrypto/certs/5f/bundle.pem66
-rw-r--r--src/regress/lib/libcrypto/certs/5f/roots.pem42
-rw-r--r--src/regress/lib/libcrypto/certs/5g/bundle.pem88
-rw-r--r--src/regress/lib/libcrypto/certs/5g/roots.pem42
-rw-r--r--src/regress/lib/libcrypto/certs/5h/bundle.pem88
-rw-r--r--src/regress/lib/libcrypto/certs/5h/roots.pem21
-rw-r--r--src/regress/lib/libcrypto/certs/5i/bundle.pem88
-rw-r--r--src/regress/lib/libcrypto/certs/5i/roots.pem21
-rw-r--r--src/regress/lib/libcrypto/certs/6a/bundle.pem88
-rw-r--r--src/regress/lib/libcrypto/certs/6a/roots.pem42
-rw-r--r--src/regress/lib/libcrypto/certs/6b/bundle.pem88
-rw-r--r--src/regress/lib/libcrypto/certs/6b/roots.pem42
-rw-r--r--src/regress/lib/libcrypto/certs/7a/bundle.pem88
-rw-r--r--src/regress/lib/libcrypto/certs/7a/roots.pem42
-rw-r--r--src/regress/lib/libcrypto/certs/7b/bundle.pem88
-rw-r--r--src/regress/lib/libcrypto/certs/7b/roots.pem42
-rw-r--r--src/regress/lib/libcrypto/certs/8a/bundle.pem43
-rw-r--r--src/regress/lib/libcrypto/certs/8a/roots.pem21
-rw-r--r--src/regress/lib/libcrypto/certs/9a/bundle.pem43
-rw-r--r--src/regress/lib/libcrypto/certs/9a/roots.pem21
74 files changed, 3721 insertions, 0 deletions
diff --git a/src/regress/lib/libcrypto/certs/10a/bundle.pem b/src/regress/lib/libcrypto/certs/10a/bundle.pem
new file mode 100644
index 0000000000..0ac7740a38
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/10a/bundle.pem
@@ -0,0 +1,65 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 1
3subject= CN = LibreSSL Test Intermediate CA 1
4issuer= CN = LibreSSL Test Root CA 1
5subject= CN = LibreSSL Test Intermediate CA 1
6issuer= CN = LibreSSL Test Root CA 2
7-----BEGIN CERTIFICATE-----
8MIIDLjCCAhagAwIBAgIJAIZjiC92oa9rMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
9BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
10MTEzWhcNMzAwNzEyMTgyMTEzWjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
11cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA1vjt49DL5EtZ
12cpC0QUyqmtRmtw+VSKst3XVCDTiVwBLVcm6N0uTkrqVPv+W8tZpv50nt4EVkIDlD
13P2gr7E4ZwLETpJs5UersSUzAL4FdpmOGPzJ18Kf40Cadft5NCrE+d2Na2MtJ1SZM
14ppikmlLnXMnQOItexPkYMRYE/WuAmrl/sF7sy1yPA7ZHiGod+jPY/idLNABfT8Te
15f/m7GpVFj9a9bJxt5OdtI28zhNvLLO5LvG5Ck43iAxUObT4xjYnrHq1dG9+kPnAZ
168lal4rEHKnU8XAEaI6f0GjkJjKFLMZcsnOyXTlozBx8MCHbi5/y9i4B8XD4PkBD0
17V/7byZqfmwIDAQABo2AwXjAdBgNVHQ4EFgQUVQKICHoaO3YJ+QYHC4vSVK5Oz0Ew
18HwYDVR0jBBgwFoAUrrQHpRzxzE790gxSvclXezCqq2owDAYDVR0TAQH/BAIwADAO
19BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAH+vw4RBwJ8/AOI4qAha
20bAi8bFCbG6l/QXZnR2T4jMjpnH4FZDh0UEdZFRBA4+nGCJAT3nG+dmRv5htOGJz5
21u/FwJTzfNFEp+KjnffmhXgf6FGyutGUcmVbM7evTyVYE+gkuNopwkwyomsaGayjp
22f+kpHRHqApi7r/kWe9W0T2iCQiQwhu0OSFQE7Uc6MM70U388wsnU25eCJpWZLHuT
23y/Q+zqIL7qu6b35CkVovi3TJ/R+pbg7FoqL+UzuI9jKsi9Ufl8HYsrvFFXyMIaJv
24dBbAF00yyATAPfR+rsTI1XT8O/PHOom9YVLpy5Hn7dXyTX4kiclIWgeYchcnIDzP
258nA=
26-----END CERTIFICATE-----
27-----BEGIN CERTIFICATE-----
28MIIDLDCCAhSgAwIBAgIDEAABMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNVBAMMF0xp
29YnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTEwMDEwMTAwMDAwMFoXDTIwMDEwMTAw
30MDAwMFowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlhdGUgQ0Eg
31MTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANFLUn5c5sWQBV1XGPQw
32V37J4ziLpN4DpqFQV0m0QANpmQG/J3NkFhSRC9VBhTQBDwlUdsFDD6sUHpszVkRf
332/cJ8dl0CsRCi/Iz5lNrRD7zS+l0YlZAdSeOjNnxFshUWKHFOc/xnrjhVi71WI3z
340ZGT84lFArf8U+3YSMQi4Kuk3lqFvcWIObevnS/wSp9P3zy7NcNVkgAUD7vt+Oqi
35IsVpN7noiUJkZqncXLGa+t1a7nztY9Z4x9VEU2io/o1vSn5UHDZFjYj1onDCL0CF
36qjipluH3Hw3frPPh7V43gkGpTYi8Ona4lg5gXFWsquneT0AzVxoW6S6xHhiBxs1e
379KcCAwEAAaNjMGEwHQYDVR0OBBYEFK60B6Uc8cxO/dIMUr3JV3swqqtqMB8GA1Ud
38IwQYMBaAFDH3FMRsXF02OKcY2W3s799Z/6VTMA8GA1UdEwEB/wQFMAMBAf8wDgYD
39VR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQCLRUkOkG4eKiOXDiiTuJSr
40JWFe2zilHaecLny3AyuFKydYuNJe1/DCSNeGDSm1dleAgC5xIqR0T7HGN+2M2N7V
41LK4T7Z2Re/2CX+kaaQqm2wD3PT2pdYoEDjVMztFdeG5pRxmwxWCjlStMJWFFekZg
42eLAk7irmTTuclohrjgH7PA7fIRbjXQrLwHOlv2c6+d064V1KuxkJFim3rYYIsC+o
43psnNYK4OyQfOn20KRKTL1i3AR64TpNocM5Zug5tNS89L2Fc+5dsgoSdep0R/vFK5
440qrQI+SFKMs9KCgMHPrSxcnZRWHlbG9Y/1qV/hq4+xEdmkbBQNi+36NLqiCv9V7k
45-----END CERTIFICATE-----
46-----BEGIN CERTIFICATE-----
47MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9qMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
48BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjExM1oXDTMw
49MDcxMjE4MjExM1owKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
50dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANFLUn5c5sWQ
51BV1XGPQwV37J4ziLpN4DpqFQV0m0QANpmQG/J3NkFhSRC9VBhTQBDwlUdsFDD6sU
52HpszVkRf2/cJ8dl0CsRCi/Iz5lNrRD7zS+l0YlZAdSeOjNnxFshUWKHFOc/xnrjh
53Vi71WI3z0ZGT84lFArf8U+3YSMQi4Kuk3lqFvcWIObevnS/wSp9P3zy7NcNVkgAU
54D7vt+OqiIsVpN7noiUJkZqncXLGa+t1a7nztY9Z4x9VEU2io/o1vSn5UHDZFjYj1
55onDCL0CFqjipluH3Hw3frPPh7V43gkGpTYi8Ona4lg5gXFWsquneT0AzVxoW6S6x
56HhiBxs1e9KcCAwEAAaNjMGEwHQYDVR0OBBYEFK60B6Uc8cxO/dIMUr3JV3swqqtq
57MB8GA1UdIwQYMBaAFPSqpdem3seZWqE8EiFTR0rrF2pkMA8GA1UdEwEB/wQFMAMB
58Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQB++++cgTa/2F37
592WFWlKnylBXHPjc8pb2q9gE+aYTefeaFQ+tFPK0/BfdHiZJ5iz85tYy62ihWfLQf
60ONA9hjyDZgFUA3yuseBchwTxW7iN72pG4c+O7JI9pT6MZYDkStb3QdvxIEFDthRb
61OjmlHsTuEcYxzjRGjmY/HInFbJvBPYKPZKTvPC9TCZPF7gNSfS73x/A0Qnt6VWFD
62HMpGaiccRbp4CN+Rw8gD781Ck8U60lmu2JLud6Wy6H9xYt8IVs/YQy7bI68KcL2F
636EndBaiH/kEzVCAMxBCt0vo9W0T669GQfPwTh+5E0L2FuYxAOgutdy4XoZq2aKTm
64D2iqtCsQ
65-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/10a/roots.pem b/src/regress/lib/libcrypto/certs/10a/roots.pem
new file mode 100644
index 0000000000..abcc0d3d65
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/10a/roots.pem
@@ -0,0 +1,42 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJAJ6bvd95cF8EMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjExMloXDTMw
6MDcxMjE4MjExMlowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCxjk/8x2X5LdF86sdRjpSJ
82OUkzcnITCJLxvBdRMnXWj5S0tPCbv+3HyUmDub4KSyPUfERMKfjSPxjcaoX4Vym
9CT2W0Vbxmabpym8EioktD1dDiYt0PnN78hYKqZtzKeYAi86hLgStVeop0jO9/5EN
108CRPmuvbXjoEN6jDC4FABZe0HwNd96ulfw502o6e6xNaIdFQPXC61acrd3Pyx9U7
11BOAte7ysBjcX68qoUmSD6jnGZi6KCzjmo1nEWMgr8S9IaeSKQOo/5mYLFXGaMSgp
12j55lP3EUQvm/eOZaKTDewP5XSm/qyQefTr7vvaunKUHHskU9IEkjXG9pQheBnzT3
13AgMBAAGjYzBhMB0GA1UdDgQWBBQx9xTEbFxdNjinGNlt7O/fWf+lUzAfBgNVHSME
14GDAWgBQx9xTEbFxdNjinGNlt7O/fWf+lUzAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAk1/bkAnG3hM17zI1WGy7cdZU
16taEkhdG/ylSQoyvvRRoHYGMfCc2NymGDU1f2xqSqG7DGpbifqpX+HMbctTiu5Irt
17/6qGR0dkuCGgHHAKQjk+Q1QP5NaIKF2290K6rwCkqDLYODjF6McfndreC8MPxlJP
18VKHA3xf6XItqU3VERtTFZd8lorS34CuPiuukNvTA89bUkPCknQRqLKXKUvRDFsl7
19LjSai9WAeGX68qQCw21DDMkHA7GmMoRGsoyzV83R5hBFZun0cmsGi41KCA9Hn18y
20eWQGWZ/TfTRsw1clHEhasU7UBkBHCeAXmgHveaxm+G/kRflK9XzZKAyi1yLI6w==
21-----END CERTIFICATE-----
22subject= CN = LibreSSL Test Root CA 2
23issuer= CN = LibreSSL Test Root CA 2
24-----BEGIN CERTIFICATE-----
25MIIDKjCCAhKgAwIBAgIJANSc473jnpSPMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
26BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjExMloXDTMw
27MDcxMjE4MjExMlowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDIw
28ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDw8C1XpMKzIqlvkPhdIrlf
29Rdes/KIb7cmdr7kWAlbBwSlqfFTwHlm1fmVsnbGXYrG4Z4FuJeD5+zhJZ1ITVorg
30/LSX9eP4CPpGgbJoXXTEZ5sMuZWujI1qQDxPhSugGKKo8NzDfBs3ud5VblTR+NG4
31c1J1Mvg2fNlMvqY+TSME8haTLjw8buLwM3NrJFM/mOYCWHDIzdqm3JKBSnqlFRzu
32ni8/B1MPQEdMabtunIcZ6HnNp2lPGAAMJIgI/w7CN1N+98SJbVN0fvL6OUR7eSM2
33chKhscjzA2RoItwBNK1gDqPT/IeB3OKSt8bni7qvD4hMHevRhgJkNsQTW+w/wFMd
34AgMBAAGjYzBhMB0GA1UdDgQWBBT0qqXXpt7HmVqhPBIhU0dK6xdqZDAfBgNVHSME
35GDAWgBT0qqXXpt7HmVqhPBIhU0dK6xdqZDAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
36DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEArnWinqACo0VjrKbIsEWMVAqy
37+yaNsxsdZu+7gIatL7No6EsLLSItkI3dfk/6HzZTPzotFQZOU/9P0tU3VCuKyT14
38zbtiAexK//GsvrGA0rdIihAUau4WPwDsaFuBcMl6nqeSa7UNRJwNgJxaDOVsD/N9
397DEqHFPSXv9GqmiU4vSZzzp7M/1NF1xXnVcU4KaPtR9Qcq9e66GSV8+KtD8XuWVe
40ofGzenQD49QAeSUja31nfShqBpCm9wDx6FuZZHBRqwqDBG6fQMRGXGugyGo58NVb
41SHht4oOBfKghBkDaAf/45bmWIlu8A6TkPycxOTe0jLn/2jP2N5kb/Wq8MTmufg==
42-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/10b/bundle.pem b/src/regress/lib/libcrypto/certs/10b/bundle.pem
new file mode 100644
index 0000000000..bbf7bf032a
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/10b/bundle.pem
@@ -0,0 +1,65 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 1
3subject= CN = LibreSSL Test Intermediate CA 1
4issuer= CN = LibreSSL Test Root CA 2
5subject= CN = LibreSSL Test Intermediate CA 1
6issuer= CN = LibreSSL Test Root CA 1
7-----BEGIN CERTIFICATE-----
8MIIDLjCCAhagAwIBAgIJAIZjiC92oa9rMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
9BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
10MTEzWhcNMzAwNzEyMTgyMTEzWjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
11cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA1vjt49DL5EtZ
12cpC0QUyqmtRmtw+VSKst3XVCDTiVwBLVcm6N0uTkrqVPv+W8tZpv50nt4EVkIDlD
13P2gr7E4ZwLETpJs5UersSUzAL4FdpmOGPzJ18Kf40Cadft5NCrE+d2Na2MtJ1SZM
14ppikmlLnXMnQOItexPkYMRYE/WuAmrl/sF7sy1yPA7ZHiGod+jPY/idLNABfT8Te
15f/m7GpVFj9a9bJxt5OdtI28zhNvLLO5LvG5Ck43iAxUObT4xjYnrHq1dG9+kPnAZ
168lal4rEHKnU8XAEaI6f0GjkJjKFLMZcsnOyXTlozBx8MCHbi5/y9i4B8XD4PkBD0
17V/7byZqfmwIDAQABo2AwXjAdBgNVHQ4EFgQUVQKICHoaO3YJ+QYHC4vSVK5Oz0Ew
18HwYDVR0jBBgwFoAUrrQHpRzxzE790gxSvclXezCqq2owDAYDVR0TAQH/BAIwADAO
19BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAH+vw4RBwJ8/AOI4qAha
20bAi8bFCbG6l/QXZnR2T4jMjpnH4FZDh0UEdZFRBA4+nGCJAT3nG+dmRv5htOGJz5
21u/FwJTzfNFEp+KjnffmhXgf6FGyutGUcmVbM7evTyVYE+gkuNopwkwyomsaGayjp
22f+kpHRHqApi7r/kWe9W0T2iCQiQwhu0OSFQE7Uc6MM70U388wsnU25eCJpWZLHuT
23y/Q+zqIL7qu6b35CkVovi3TJ/R+pbg7FoqL+UzuI9jKsi9Ufl8HYsrvFFXyMIaJv
24dBbAF00yyATAPfR+rsTI1XT8O/PHOom9YVLpy5Hn7dXyTX4kiclIWgeYchcnIDzP
258nA=
26-----END CERTIFICATE-----
27-----BEGIN CERTIFICATE-----
28MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9qMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
29BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjExM1oXDTMw
30MDcxMjE4MjExM1owKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
31dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANFLUn5c5sWQ
32BV1XGPQwV37J4ziLpN4DpqFQV0m0QANpmQG/J3NkFhSRC9VBhTQBDwlUdsFDD6sU
33HpszVkRf2/cJ8dl0CsRCi/Iz5lNrRD7zS+l0YlZAdSeOjNnxFshUWKHFOc/xnrjh
34Vi71WI3z0ZGT84lFArf8U+3YSMQi4Kuk3lqFvcWIObevnS/wSp9P3zy7NcNVkgAU
35D7vt+OqiIsVpN7noiUJkZqncXLGa+t1a7nztY9Z4x9VEU2io/o1vSn5UHDZFjYj1
36onDCL0CFqjipluH3Hw3frPPh7V43gkGpTYi8Ona4lg5gXFWsquneT0AzVxoW6S6x
37HhiBxs1e9KcCAwEAAaNjMGEwHQYDVR0OBBYEFK60B6Uc8cxO/dIMUr3JV3swqqtq
38MB8GA1UdIwQYMBaAFPSqpdem3seZWqE8EiFTR0rrF2pkMA8GA1UdEwEB/wQFMAMB
39Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQB++++cgTa/2F37
402WFWlKnylBXHPjc8pb2q9gE+aYTefeaFQ+tFPK0/BfdHiZJ5iz85tYy62ihWfLQf
41ONA9hjyDZgFUA3yuseBchwTxW7iN72pG4c+O7JI9pT6MZYDkStb3QdvxIEFDthRb
42OjmlHsTuEcYxzjRGjmY/HInFbJvBPYKPZKTvPC9TCZPF7gNSfS73x/A0Qnt6VWFD
43HMpGaiccRbp4CN+Rw8gD781Ck8U60lmu2JLud6Wy6H9xYt8IVs/YQy7bI68KcL2F
446EndBaiH/kEzVCAMxBCt0vo9W0T669GQfPwTh+5E0L2FuYxAOgutdy4XoZq2aKTm
45D2iqtCsQ
46-----END CERTIFICATE-----
47-----BEGIN CERTIFICATE-----
48MIIDLDCCAhSgAwIBAgIDEAABMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNVBAMMF0xp
49YnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTEwMDEwMTAwMDAwMFoXDTIwMDEwMTAw
50MDAwMFowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlhdGUgQ0Eg
51MTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANFLUn5c5sWQBV1XGPQw
52V37J4ziLpN4DpqFQV0m0QANpmQG/J3NkFhSRC9VBhTQBDwlUdsFDD6sUHpszVkRf
532/cJ8dl0CsRCi/Iz5lNrRD7zS+l0YlZAdSeOjNnxFshUWKHFOc/xnrjhVi71WI3z
540ZGT84lFArf8U+3YSMQi4Kuk3lqFvcWIObevnS/wSp9P3zy7NcNVkgAUD7vt+Oqi
55IsVpN7noiUJkZqncXLGa+t1a7nztY9Z4x9VEU2io/o1vSn5UHDZFjYj1onDCL0CF
56qjipluH3Hw3frPPh7V43gkGpTYi8Ona4lg5gXFWsquneT0AzVxoW6S6xHhiBxs1e
579KcCAwEAAaNjMGEwHQYDVR0OBBYEFK60B6Uc8cxO/dIMUr3JV3swqqtqMB8GA1Ud
58IwQYMBaAFDH3FMRsXF02OKcY2W3s799Z/6VTMA8GA1UdEwEB/wQFMAMBAf8wDgYD
59VR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQCLRUkOkG4eKiOXDiiTuJSr
60JWFe2zilHaecLny3AyuFKydYuNJe1/DCSNeGDSm1dleAgC5xIqR0T7HGN+2M2N7V
61LK4T7Z2Re/2CX+kaaQqm2wD3PT2pdYoEDjVMztFdeG5pRxmwxWCjlStMJWFFekZg
62eLAk7irmTTuclohrjgH7PA7fIRbjXQrLwHOlv2c6+d064V1KuxkJFim3rYYIsC+o
63psnNYK4OyQfOn20KRKTL1i3AR64TpNocM5Zug5tNS89L2Fc+5dsgoSdep0R/vFK5
640qrQI+SFKMs9KCgMHPrSxcnZRWHlbG9Y/1qV/hq4+xEdmkbBQNi+36NLqiCv9V7k
65-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/10b/roots.pem b/src/regress/lib/libcrypto/certs/10b/roots.pem
new file mode 100644
index 0000000000..abcc0d3d65
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/10b/roots.pem
@@ -0,0 +1,42 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJAJ6bvd95cF8EMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjExMloXDTMw
6MDcxMjE4MjExMlowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCxjk/8x2X5LdF86sdRjpSJ
82OUkzcnITCJLxvBdRMnXWj5S0tPCbv+3HyUmDub4KSyPUfERMKfjSPxjcaoX4Vym
9CT2W0Vbxmabpym8EioktD1dDiYt0PnN78hYKqZtzKeYAi86hLgStVeop0jO9/5EN
108CRPmuvbXjoEN6jDC4FABZe0HwNd96ulfw502o6e6xNaIdFQPXC61acrd3Pyx9U7
11BOAte7ysBjcX68qoUmSD6jnGZi6KCzjmo1nEWMgr8S9IaeSKQOo/5mYLFXGaMSgp
12j55lP3EUQvm/eOZaKTDewP5XSm/qyQefTr7vvaunKUHHskU9IEkjXG9pQheBnzT3
13AgMBAAGjYzBhMB0GA1UdDgQWBBQx9xTEbFxdNjinGNlt7O/fWf+lUzAfBgNVHSME
14GDAWgBQx9xTEbFxdNjinGNlt7O/fWf+lUzAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAk1/bkAnG3hM17zI1WGy7cdZU
16taEkhdG/ylSQoyvvRRoHYGMfCc2NymGDU1f2xqSqG7DGpbifqpX+HMbctTiu5Irt
17/6qGR0dkuCGgHHAKQjk+Q1QP5NaIKF2290K6rwCkqDLYODjF6McfndreC8MPxlJP
18VKHA3xf6XItqU3VERtTFZd8lorS34CuPiuukNvTA89bUkPCknQRqLKXKUvRDFsl7
19LjSai9WAeGX68qQCw21DDMkHA7GmMoRGsoyzV83R5hBFZun0cmsGi41KCA9Hn18y
20eWQGWZ/TfTRsw1clHEhasU7UBkBHCeAXmgHveaxm+G/kRflK9XzZKAyi1yLI6w==
21-----END CERTIFICATE-----
22subject= CN = LibreSSL Test Root CA 2
23issuer= CN = LibreSSL Test Root CA 2
24-----BEGIN CERTIFICATE-----
25MIIDKjCCAhKgAwIBAgIJANSc473jnpSPMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
26BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjExMloXDTMw
27MDcxMjE4MjExMlowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDIw
28ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDw8C1XpMKzIqlvkPhdIrlf
29Rdes/KIb7cmdr7kWAlbBwSlqfFTwHlm1fmVsnbGXYrG4Z4FuJeD5+zhJZ1ITVorg
30/LSX9eP4CPpGgbJoXXTEZ5sMuZWujI1qQDxPhSugGKKo8NzDfBs3ud5VblTR+NG4
31c1J1Mvg2fNlMvqY+TSME8haTLjw8buLwM3NrJFM/mOYCWHDIzdqm3JKBSnqlFRzu
32ni8/B1MPQEdMabtunIcZ6HnNp2lPGAAMJIgI/w7CN1N+98SJbVN0fvL6OUR7eSM2
33chKhscjzA2RoItwBNK1gDqPT/IeB3OKSt8bni7qvD4hMHevRhgJkNsQTW+w/wFMd
34AgMBAAGjYzBhMB0GA1UdDgQWBBT0qqXXpt7HmVqhPBIhU0dK6xdqZDAfBgNVHSME
35GDAWgBT0qqXXpt7HmVqhPBIhU0dK6xdqZDAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
36DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEArnWinqACo0VjrKbIsEWMVAqy
37+yaNsxsdZu+7gIatL7No6EsLLSItkI3dfk/6HzZTPzotFQZOU/9P0tU3VCuKyT14
38zbtiAexK//GsvrGA0rdIihAUau4WPwDsaFuBcMl6nqeSa7UNRJwNgJxaDOVsD/N9
397DEqHFPSXv9GqmiU4vSZzzp7M/1NF1xXnVcU4KaPtR9Qcq9e66GSV8+KtD8XuWVe
40ofGzenQD49QAeSUja31nfShqBpCm9wDx6FuZZHBRqwqDBG6fQMRGXGugyGo58NVb
41SHht4oOBfKghBkDaAf/45bmWIlu8A6TkPycxOTe0jLn/2jP2N5kb/Wq8MTmufg==
42-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/11a/bundle.pem b/src/regress/lib/libcrypto/certs/11a/bundle.pem
new file mode 100644
index 0000000000..469fd9a4e3
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/11a/bundle.pem
@@ -0,0 +1,87 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 2
3subject= CN = LibreSSL Test Intermediate CA 2
4issuer= CN = LibreSSL Test Intermediate CA 1
5subject= CN = LibreSSL Test Intermediate CA 2
6issuer= CN = LibreSSL Test Root CA 2
7subject= CN = LibreSSL Test Intermediate CA 1
8issuer= CN = LibreSSL Test Root CA 1
9-----BEGIN CERTIFICATE-----
10MIIDLjCCAhagAwIBAgIJAIZjiC92oa9uMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
11BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDIwHhcNMjAwNzE0MTgy
12MTE0WhcNMzAwNzEyMTgyMTE0WjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
13cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA0qIOtSgp2IeF
14w3+flo6YklUV6nx62AtCL/qS81c8HFn+pNynSl+JOkml6Zi8GXJkFaXvpMoEexgY
15auFdIZb6ey/3Yq3nKBakZAYrwkRMcR7mTOZZTkQMnfYhtnjRT2/V4vQJbND3VtF3
16i/vfL1kXzFYLq58lNDGx0aDShmHXIU+PWCP3MIeU9Fvm6BC0Eavp3b1Euf68XNfc
177NJyLLJhwYeBqD9oTGSYQgEkahcax35GpLJOgEB/lrj9Omjn6025t5wjYl8GCwNJ
18ASB/FXvkkU6rWiJiAJSI19HmPtMmzpjwMwLrZ1z1DDRK1fybMYAR6QSNJryJ0dur
195cPN9W1IKwIDAQABo2AwXjAdBgNVHQ4EFgQU5qL5SHSKDoXbZuogDxgLggBSQ+Ew
20HwYDVR0jBBgwFoAUlCHJX/FQ4RYcjosrgTvPLEGGjUkwDAYDVR0TAQH/BAIwADAO
21BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAJUhgmhYHRnwvixYGvYo
22BrGBW6Z7hzTkqdMU30xK/g5487tqVWPeXzTHa5enP3IfKSp5F4k63y6ZVgiDglFS
232sdSR4KFO8hurgHyS+njFmlGGw21pP3pD5ef0yVFcDsLvAHhVKd8Y1irTXyAO5wr
24Xi57lQYPhK6ag9Uu9Yef/jF99YKOthXg3b2OGkdUkbc4Bt6LE8gA/C56DyefQbBx
25w1o1qz0mG65OXN+63PRP5rB/B+BVZjlDw79kWzYOE/lYUDZSogbqVZPx4IWEWd9k
26LXkSs/23ef/h4PpgpopUYgjqtOopSu/QQcwoacdK7hhYTLieTcvFRjSnRaLO/ted
27Gdc=
28-----END CERTIFICATE-----
29-----BEGIN CERTIFICATE-----
30MIIDOjCCAiKgAwIBAgIJAIZjiC92oa9sMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
31BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
32MTE0WhcNMzAwNzEyMTgyMTE0WjAqMSgwJgYDVQQDDB9MaWJyZVNTTCBUZXN0IElu
33dGVybWVkaWF0ZSBDQSAyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
341p6elyzXBp8yyjYN6OSgxlsOuppHRI8u9VrUnRXelZXZuhavNwASyKAGox36V+zh
35/qQe71YVw9QapMIOUozHovqGtlT+O2Qob2ijnmbFW7DXd8fV47+3sHLO1P56UMDu
366IflIeSjAC08+dSR22/f+Z2U3m9BZXR9aBaISCEIx1Rl1EPXDzZl1TuM4Or/ow3l
37D0ukNJmT7MpZg+FGRycbK/1N9U6RSYpFsFnvcRs4JDv/O+Yn53sMacVA3Dt8xEM5
38aMeqOybeaF1BokcYLpXqJkC9eO8O+dGLcjOCVEDAEfWmcralnH0DjYOX8qolKFZ1
39xqFdEBk8Aa6UiYwWwRKegwIDAQABo2MwYTAdBgNVHQ4EFgQUlCHJX/FQ4RYcjosr
40gTvPLEGGjUkwHwYDVR0jBBgwFoAUY7wGn1bS4LfZ/7k/jvxdUhC1LQ0wDwYDVR0T
41AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggEBAK/s
421NVnjjoTDHoJG8qfEC7sXvF5iC23gzfODFlxTO4B83eLSXVslYeKSPIUHMucQcNz
43jB2qqd1k4RXV2+2gT0ohmp2dySI7VWBz17vPoSWlgnpYyDCAouidmzzBQ/YZJp7x
44fDaY7rPIwq8kTbWRUB9sogV97nYfqf1wkusoO9zPSJ6kNi+ZZVa5D4ydTJ3TJ3SB
459D2KBGfOwNPgVg/6Yg90Oo7iB/BNRNThek5KRGcZpzNEKhi4wO1BB7IcSk5YqfhH
46a4YPflgo+EvUqBiWaURGSWRkz34Q7cE9tZbLHCZCiKct7Al6xJA1uVO8hCEPn1ht
474S7MaPhik6F6M5ioA30=
48-----END CERTIFICATE-----
49-----BEGIN CERTIFICATE-----
50MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9tMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
51BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjExNFoXDTMw
52MDcxMjE4MjExNFowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
53dGUgQ0EgMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANaenpcs1waf
54Mso2DejkoMZbDrqaR0SPLvVa1J0V3pWV2boWrzcAEsigBqMd+lfs4f6kHu9WFcPU
55GqTCDlKMx6L6hrZU/jtkKG9oo55mxVuw13fH1eO/t7ByztT+elDA7uiH5SHkowAt
56PPnUkdtv3/mdlN5vQWV0fWgWiEghCMdUZdRD1w82ZdU7jODq/6MN5Q9LpDSZk+zK
57WYPhRkcnGyv9TfVOkUmKRbBZ73EbOCQ7/zvmJ+d7DGnFQNw7fMRDOWjHqjsm3mhd
58QaJHGC6V6iZAvXjvDvnRi3IzglRAwBH1pnK2pZx9A42Dl/KqJShWdcahXRAZPAGu
59lImMFsESnoMCAwEAAaNjMGEwHQYDVR0OBBYEFJQhyV/xUOEWHI6LK4E7zyxBho1J
60MB8GA1UdIwQYMBaAFOXHEIoLbAjzKcCFNgyfpXShrCcQMA8GA1UdEwEB/wQFMAMB
61Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQBu2p7u3M/3Xt+m
62GAcaj+mCDf5Y/Jz9ldJEcxo66QOuySyTy0si4YGsLVTB5oTJahSXdir7poLLXDR8
63aCnc4o1+INLGW6w9j6m1dElkW/f0f0naS4JUKh3ByCuGjaxcNnSDa2Yu+J6QDrWH
64sZZKHBixE6uj7M9Sy+Ltn3QsR7LozlxeAaTwhmwOIzPPkUd7s4/w6h4Rc7Wmbm0q
65Z3QaCVqCUk2U8ELUhmh9v166DxmYC5ElivsxkerWybKwgq1LZS89C1MdDyAFBlzn
66ONNdezY8tb79aoUFaEh32ifmw1sbWRbX1TiX9tH4vBquELj1noK4IXlnAGALJrl2
67VhJsGgAN
68-----END CERTIFICATE-----
69-----BEGIN CERTIFICATE-----
70MIIDLDCCAhSgAwIBAgIDEAABMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNVBAMMF0xp
71YnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTEwMDEwMTAwMDAwMFoXDTIwMDEwMTAw
72MDAwMFowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlhdGUgQ0Eg
73MTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM3ZEIUSS/dVEGXstg5E
74S3N5GTCLIg7tW5LqIBwBlYe+EgDtyNO0TV38EwaH9KVQW8E0vxD0iMOc2PQot+AD
75KqTzn+QCKWJARdfSZq3h8e8anTYng2CS2RHdkgywfyJzwCa9IGNnXdH4rn4UFiVM
76hqC3RXvomZRSW80txP/XxHB2zHen7oLoh6LmWKcoTUi3JkkYuXS1zryCxDcctBEn
770fQj9UDRtKJXkJHcV33JYrOXVJh6dCTX774PCHFsB98eURm1d0jrvxzluXP9FfMo
78lM5XQ8V+YIutcKE6sBrwR4S2XHK/pWFNccwZNjuBjEJ185M3VqO4R11x25oIWqjb
79V+8CAwEAAaNjMGEwHQYDVR0OBBYEFGO8Bp9W0uC32f+5P478XVIQtS0NMB8GA1Ud
80IwQYMBaAFJMiUX4W5lg6bXLUlM+BG76S0UZhMA8GA1UdEwEB/wQFMAMBAf8wDgYD
81VR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQCfn4z/tzvTRdLa7YF3t7tp
82ZP6dESV5unRMCDNWP8AEpNcMQ1C9uWKHMoxULg+1GTOm1JAwmMykD54qh9su2APP
832QOSQvXmJL19qfR0sVyy+CmNe2I6InTlT2OVSWRx5B1mUHgCIgHnUmDMmvxPEx6Y
84pM/bWKLhfSDDOo7x2ibuVZB8w23CMlItKW1NQKuA/ow4j20d0CX35Abwc+z+DjQg
85nNPFnYwJf561YnpRmnzPDhwmcvNVl5F7DeGNR9V3yS+4Ut4FY5AJ7CJzoOM/5Uvh
86cMMS34JjZMtlxEdO0LaKtuFfW4vRo9x3+fDx68bYSoVgr1Rx+SvjJ7/bdzxx6V+4
87-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/11a/roots.pem b/src/regress/lib/libcrypto/certs/11a/roots.pem
new file mode 100644
index 0000000000..01775dcfd7
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/11a/roots.pem
@@ -0,0 +1,42 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJAKvY8DtYvh/tMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjExNFoXDTMw
6MDcxMjE4MjExNFowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCm46mEqa+klVIJga+Hm0YJ
8cICKwUO4JfKosIOLhTKnrSXpW+C1kzDoWXPlBM2yN4fPKtGKmv6CZu/Xpl2GkW46
9nkLfJYUNvVHfltbjgOq5drBKVaHT66S3Nn2XB9VTDyC1Z56pxV+o5RWpKrB1IpFT
10q/mxA4jZtSpEW/YfSNQv7a+R3KyyrqLoKlV1lFBpOU/Ysv7g4m+v0BjlTfFusriT
119QYzrelDu1a5m6kZxdBSJ7JYckeK5VomJAd5lH/rqWk894CgU0RrUkzHZGPGI7nI
12ygCSF5Grc2m8Y5ltcVf5fhA63b3mv82QUV3QMuAeGiOLlY4BIWFWIrr3Sc/vCpe9
13AgMBAAGjYzBhMB0GA1UdDgQWBBSTIlF+FuZYOm1y1JTPgRu+ktFGYTAfBgNVHSME
14GDAWgBSTIlF+FuZYOm1y1JTPgRu+ktFGYTAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAVNEfrlNFFBqi9h2fogib/U8z
16t95yuvM+sRCWRcxdBTuBvM+oP5Ak9H+9ud0lDzwmPp1mHiqXIU0ocStX8cTHgX4p
17g+llIUQsiKeBThHtgKMRVr91WIrl+V0BkhVgy/Dq6SJIb4wyzbZ7tUUlaqK3skW+
18x66pCdyp5Cxq+r4ueX8sCmK0+MX2mL9pcTrx69XDdgDb1nW/DirYfm8RSMeZ3WzK
19RMnsTAUAASHl20vmV46AIi+DIXFG/fx2+uLvIzhmXB8mfj7IlvdB/s3S03AF1i5v
200xhheNdyCRkYsKrAlnodyJHSq1vdYhxiUpzC//qaKcCCjgYwJSDTKU8Y6qbB8A==
21-----END CERTIFICATE-----
22subject= CN = LibreSSL Test Root CA 2
23issuer= CN = LibreSSL Test Root CA 2
24-----BEGIN CERTIFICATE-----
25MIIDKjCCAhKgAwIBAgIJAPye6rqxpeImMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
26BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjExNFoXDTMw
27MDcxMjE4MjExNFowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDIw
28ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC4Ou4PIOC+ztPFyu+4PqZZ
2984hJaJYKKyLvFgZWOKrl/E6qRI4tzCCCRJkzq+0ed6tNuwwPVA49RbVMaftUPGoz
30U+8qpN9OMaf0K8ZYi2pFNzIO8Fg2zrQh3VJPtNIGzJixAtzD62dqAuqykmJPvlXx
31IA1POb8o7+IkbKaiKWbV/H9+G8wpKig/usUlDLSoSQ0R86HsqE3Ug3GRXnv8uUx0
32/LTHU5xa4G9oX5PCem/nBgbG/78dwCCgV0MVWTDrymwN6i82V1QWwbuM1DsmKI1E
33dsNa0eKiQ9GUFCyOxxW8XUN4Zr8Rvw4QIaTctXSq7bvHEv/0syaQ8qaCmFaeS72f
34AgMBAAGjYzBhMB0GA1UdDgQWBBTlxxCKC2wI8ynAhTYMn6V0oawnEDAfBgNVHSME
35GDAWgBTlxxCKC2wI8ynAhTYMn6V0oawnEDAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
36DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAI+BMsdZKOgFszu3ed7+rmd0l
37WpWCfB2IVeSsTrLA8vRxT+6l2wNp5fAHCfBC+dLS8JrCiQeEdIRITHfLzOTb5eK0
38d8nJfIE/6HXvOBOX3nxZBspWmEjttPj2PVcWfe4CVXg7xzojNtkFQBVbsR+Zldbi
39ez5n+FNnKlJnEZlJ2fcskBsk7kPRNvFvU8w9wRmnIdBaoi3lkWaFOHEi1f/vB4b7
40jhiPntnxIqMjKJhy9jLLaCeOd39c9em505pKziU8JEHGwfTvxd/NXIs1NOBNPvIZ
41MuH27FezhWkkYoP979eWnTLG/u8wcAzvGJ1IxTo710YoLOM4wW0o203K49Diyg==
42-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/11b/bundle.pem b/src/regress/lib/libcrypto/certs/11b/bundle.pem
new file mode 100644
index 0000000000..88a082e4d5
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/11b/bundle.pem
@@ -0,0 +1,87 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 2
3subject= CN = LibreSSL Test Intermediate CA 2
4issuer= CN = LibreSSL Test Root CA 2
5subject= CN = LibreSSL Test Intermediate CA 2
6issuer= CN = LibreSSL Test Intermediate CA 1
7subject= CN = LibreSSL Test Intermediate CA 1
8issuer= CN = LibreSSL Test Root CA 1
9-----BEGIN CERTIFICATE-----
10MIIDLjCCAhagAwIBAgIJAIZjiC92oa9uMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
11BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDIwHhcNMjAwNzE0MTgy
12MTE0WhcNMzAwNzEyMTgyMTE0WjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
13cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA0qIOtSgp2IeF
14w3+flo6YklUV6nx62AtCL/qS81c8HFn+pNynSl+JOkml6Zi8GXJkFaXvpMoEexgY
15auFdIZb6ey/3Yq3nKBakZAYrwkRMcR7mTOZZTkQMnfYhtnjRT2/V4vQJbND3VtF3
16i/vfL1kXzFYLq58lNDGx0aDShmHXIU+PWCP3MIeU9Fvm6BC0Eavp3b1Euf68XNfc
177NJyLLJhwYeBqD9oTGSYQgEkahcax35GpLJOgEB/lrj9Omjn6025t5wjYl8GCwNJ
18ASB/FXvkkU6rWiJiAJSI19HmPtMmzpjwMwLrZ1z1DDRK1fybMYAR6QSNJryJ0dur
195cPN9W1IKwIDAQABo2AwXjAdBgNVHQ4EFgQU5qL5SHSKDoXbZuogDxgLggBSQ+Ew
20HwYDVR0jBBgwFoAUlCHJX/FQ4RYcjosrgTvPLEGGjUkwDAYDVR0TAQH/BAIwADAO
21BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAJUhgmhYHRnwvixYGvYo
22BrGBW6Z7hzTkqdMU30xK/g5487tqVWPeXzTHa5enP3IfKSp5F4k63y6ZVgiDglFS
232sdSR4KFO8hurgHyS+njFmlGGw21pP3pD5ef0yVFcDsLvAHhVKd8Y1irTXyAO5wr
24Xi57lQYPhK6ag9Uu9Yef/jF99YKOthXg3b2OGkdUkbc4Bt6LE8gA/C56DyefQbBx
25w1o1qz0mG65OXN+63PRP5rB/B+BVZjlDw79kWzYOE/lYUDZSogbqVZPx4IWEWd9k
26LXkSs/23ef/h4PpgpopUYgjqtOopSu/QQcwoacdK7hhYTLieTcvFRjSnRaLO/ted
27Gdc=
28-----END CERTIFICATE-----
29-----BEGIN CERTIFICATE-----
30MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9tMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
31BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjExNFoXDTMw
32MDcxMjE4MjExNFowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
33dGUgQ0EgMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANaenpcs1waf
34Mso2DejkoMZbDrqaR0SPLvVa1J0V3pWV2boWrzcAEsigBqMd+lfs4f6kHu9WFcPU
35GqTCDlKMx6L6hrZU/jtkKG9oo55mxVuw13fH1eO/t7ByztT+elDA7uiH5SHkowAt
36PPnUkdtv3/mdlN5vQWV0fWgWiEghCMdUZdRD1w82ZdU7jODq/6MN5Q9LpDSZk+zK
37WYPhRkcnGyv9TfVOkUmKRbBZ73EbOCQ7/zvmJ+d7DGnFQNw7fMRDOWjHqjsm3mhd
38QaJHGC6V6iZAvXjvDvnRi3IzglRAwBH1pnK2pZx9A42Dl/KqJShWdcahXRAZPAGu
39lImMFsESnoMCAwEAAaNjMGEwHQYDVR0OBBYEFJQhyV/xUOEWHI6LK4E7zyxBho1J
40MB8GA1UdIwQYMBaAFOXHEIoLbAjzKcCFNgyfpXShrCcQMA8GA1UdEwEB/wQFMAMB
41Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQBu2p7u3M/3Xt+m
42GAcaj+mCDf5Y/Jz9ldJEcxo66QOuySyTy0si4YGsLVTB5oTJahSXdir7poLLXDR8
43aCnc4o1+INLGW6w9j6m1dElkW/f0f0naS4JUKh3ByCuGjaxcNnSDa2Yu+J6QDrWH
44sZZKHBixE6uj7M9Sy+Ltn3QsR7LozlxeAaTwhmwOIzPPkUd7s4/w6h4Rc7Wmbm0q
45Z3QaCVqCUk2U8ELUhmh9v166DxmYC5ElivsxkerWybKwgq1LZS89C1MdDyAFBlzn
46ONNdezY8tb79aoUFaEh32ifmw1sbWRbX1TiX9tH4vBquELj1noK4IXlnAGALJrl2
47VhJsGgAN
48-----END CERTIFICATE-----
49-----BEGIN CERTIFICATE-----
50MIIDOjCCAiKgAwIBAgIJAIZjiC92oa9sMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
51BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
52MTE0WhcNMzAwNzEyMTgyMTE0WjAqMSgwJgYDVQQDDB9MaWJyZVNTTCBUZXN0IElu
53dGVybWVkaWF0ZSBDQSAyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
541p6elyzXBp8yyjYN6OSgxlsOuppHRI8u9VrUnRXelZXZuhavNwASyKAGox36V+zh
55/qQe71YVw9QapMIOUozHovqGtlT+O2Qob2ijnmbFW7DXd8fV47+3sHLO1P56UMDu
566IflIeSjAC08+dSR22/f+Z2U3m9BZXR9aBaISCEIx1Rl1EPXDzZl1TuM4Or/ow3l
57D0ukNJmT7MpZg+FGRycbK/1N9U6RSYpFsFnvcRs4JDv/O+Yn53sMacVA3Dt8xEM5
58aMeqOybeaF1BokcYLpXqJkC9eO8O+dGLcjOCVEDAEfWmcralnH0DjYOX8qolKFZ1
59xqFdEBk8Aa6UiYwWwRKegwIDAQABo2MwYTAdBgNVHQ4EFgQUlCHJX/FQ4RYcjosr
60gTvPLEGGjUkwHwYDVR0jBBgwFoAUY7wGn1bS4LfZ/7k/jvxdUhC1LQ0wDwYDVR0T
61AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggEBAK/s
621NVnjjoTDHoJG8qfEC7sXvF5iC23gzfODFlxTO4B83eLSXVslYeKSPIUHMucQcNz
63jB2qqd1k4RXV2+2gT0ohmp2dySI7VWBz17vPoSWlgnpYyDCAouidmzzBQ/YZJp7x
64fDaY7rPIwq8kTbWRUB9sogV97nYfqf1wkusoO9zPSJ6kNi+ZZVa5D4ydTJ3TJ3SB
659D2KBGfOwNPgVg/6Yg90Oo7iB/BNRNThek5KRGcZpzNEKhi4wO1BB7IcSk5YqfhH
66a4YPflgo+EvUqBiWaURGSWRkz34Q7cE9tZbLHCZCiKct7Al6xJA1uVO8hCEPn1ht
674S7MaPhik6F6M5ioA30=
68-----END CERTIFICATE-----
69-----BEGIN CERTIFICATE-----
70MIIDLDCCAhSgAwIBAgIDEAABMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNVBAMMF0xp
71YnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTEwMDEwMTAwMDAwMFoXDTIwMDEwMTAw
72MDAwMFowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlhdGUgQ0Eg
73MTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM3ZEIUSS/dVEGXstg5E
74S3N5GTCLIg7tW5LqIBwBlYe+EgDtyNO0TV38EwaH9KVQW8E0vxD0iMOc2PQot+AD
75KqTzn+QCKWJARdfSZq3h8e8anTYng2CS2RHdkgywfyJzwCa9IGNnXdH4rn4UFiVM
76hqC3RXvomZRSW80txP/XxHB2zHen7oLoh6LmWKcoTUi3JkkYuXS1zryCxDcctBEn
770fQj9UDRtKJXkJHcV33JYrOXVJh6dCTX774PCHFsB98eURm1d0jrvxzluXP9FfMo
78lM5XQ8V+YIutcKE6sBrwR4S2XHK/pWFNccwZNjuBjEJ185M3VqO4R11x25oIWqjb
79V+8CAwEAAaNjMGEwHQYDVR0OBBYEFGO8Bp9W0uC32f+5P478XVIQtS0NMB8GA1Ud
80IwQYMBaAFJMiUX4W5lg6bXLUlM+BG76S0UZhMA8GA1UdEwEB/wQFMAMBAf8wDgYD
81VR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQCfn4z/tzvTRdLa7YF3t7tp
82ZP6dESV5unRMCDNWP8AEpNcMQ1C9uWKHMoxULg+1GTOm1JAwmMykD54qh9su2APP
832QOSQvXmJL19qfR0sVyy+CmNe2I6InTlT2OVSWRx5B1mUHgCIgHnUmDMmvxPEx6Y
84pM/bWKLhfSDDOo7x2ibuVZB8w23CMlItKW1NQKuA/ow4j20d0CX35Abwc+z+DjQg
85nNPFnYwJf561YnpRmnzPDhwmcvNVl5F7DeGNR9V3yS+4Ut4FY5AJ7CJzoOM/5Uvh
86cMMS34JjZMtlxEdO0LaKtuFfW4vRo9x3+fDx68bYSoVgr1Rx+SvjJ7/bdzxx6V+4
87-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/11b/roots.pem b/src/regress/lib/libcrypto/certs/11b/roots.pem
new file mode 100644
index 0000000000..01775dcfd7
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/11b/roots.pem
@@ -0,0 +1,42 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJAKvY8DtYvh/tMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjExNFoXDTMw
6MDcxMjE4MjExNFowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCm46mEqa+klVIJga+Hm0YJ
8cICKwUO4JfKosIOLhTKnrSXpW+C1kzDoWXPlBM2yN4fPKtGKmv6CZu/Xpl2GkW46
9nkLfJYUNvVHfltbjgOq5drBKVaHT66S3Nn2XB9VTDyC1Z56pxV+o5RWpKrB1IpFT
10q/mxA4jZtSpEW/YfSNQv7a+R3KyyrqLoKlV1lFBpOU/Ysv7g4m+v0BjlTfFusriT
119QYzrelDu1a5m6kZxdBSJ7JYckeK5VomJAd5lH/rqWk894CgU0RrUkzHZGPGI7nI
12ygCSF5Grc2m8Y5ltcVf5fhA63b3mv82QUV3QMuAeGiOLlY4BIWFWIrr3Sc/vCpe9
13AgMBAAGjYzBhMB0GA1UdDgQWBBSTIlF+FuZYOm1y1JTPgRu+ktFGYTAfBgNVHSME
14GDAWgBSTIlF+FuZYOm1y1JTPgRu+ktFGYTAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAVNEfrlNFFBqi9h2fogib/U8z
16t95yuvM+sRCWRcxdBTuBvM+oP5Ak9H+9ud0lDzwmPp1mHiqXIU0ocStX8cTHgX4p
17g+llIUQsiKeBThHtgKMRVr91WIrl+V0BkhVgy/Dq6SJIb4wyzbZ7tUUlaqK3skW+
18x66pCdyp5Cxq+r4ueX8sCmK0+MX2mL9pcTrx69XDdgDb1nW/DirYfm8RSMeZ3WzK
19RMnsTAUAASHl20vmV46AIi+DIXFG/fx2+uLvIzhmXB8mfj7IlvdB/s3S03AF1i5v
200xhheNdyCRkYsKrAlnodyJHSq1vdYhxiUpzC//qaKcCCjgYwJSDTKU8Y6qbB8A==
21-----END CERTIFICATE-----
22subject= CN = LibreSSL Test Root CA 2
23issuer= CN = LibreSSL Test Root CA 2
24-----BEGIN CERTIFICATE-----
25MIIDKjCCAhKgAwIBAgIJAPye6rqxpeImMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
26BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjExNFoXDTMw
27MDcxMjE4MjExNFowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDIw
28ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC4Ou4PIOC+ztPFyu+4PqZZ
2984hJaJYKKyLvFgZWOKrl/E6qRI4tzCCCRJkzq+0ed6tNuwwPVA49RbVMaftUPGoz
30U+8qpN9OMaf0K8ZYi2pFNzIO8Fg2zrQh3VJPtNIGzJixAtzD62dqAuqykmJPvlXx
31IA1POb8o7+IkbKaiKWbV/H9+G8wpKig/usUlDLSoSQ0R86HsqE3Ug3GRXnv8uUx0
32/LTHU5xa4G9oX5PCem/nBgbG/78dwCCgV0MVWTDrymwN6i82V1QWwbuM1DsmKI1E
33dsNa0eKiQ9GUFCyOxxW8XUN4Zr8Rvw4QIaTctXSq7bvHEv/0syaQ8qaCmFaeS72f
34AgMBAAGjYzBhMB0GA1UdDgQWBBTlxxCKC2wI8ynAhTYMn6V0oawnEDAfBgNVHSME
35GDAWgBTlxxCKC2wI8ynAhTYMn6V0oawnEDAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
36DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAI+BMsdZKOgFszu3ed7+rmd0l
37WpWCfB2IVeSsTrLA8vRxT+6l2wNp5fAHCfBC+dLS8JrCiQeEdIRITHfLzOTb5eK0
38d8nJfIE/6HXvOBOX3nxZBspWmEjttPj2PVcWfe4CVXg7xzojNtkFQBVbsR+Zldbi
39ez5n+FNnKlJnEZlJ2fcskBsk7kPRNvFvU8w9wRmnIdBaoi3lkWaFOHEi1f/vB4b7
40jhiPntnxIqMjKJhy9jLLaCeOd39c9em505pKziU8JEHGwfTvxd/NXIs1NOBNPvIZ
41MuH27FezhWkkYoP979eWnTLG/u8wcAzvGJ1IxTo710YoLOM4wW0o203K49Diyg==
42-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/12a/bundle.pem b/src/regress/lib/libcrypto/certs/12a/bundle.pem
new file mode 100644
index 0000000000..d7c8e98255
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/12a/bundle.pem
@@ -0,0 +1,65 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 2
3subject= CN = LibreSSL Test Intermediate CA 2
4issuer= CN = LibreSSL Test Intermediate CA 1
5subject= CN = LibreSSL Test Intermediate CA 1
6issuer= CN = LibreSSL Test Root CA 1
7-----BEGIN CERTIFICATE-----
8MIIDLjCCAhagAwIBAgIJAIZjiC92oa9xMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
9BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDIwHhcNMjAwNzE0MTgy
10MTE2WhcNMzAwNzEyMTgyMTE2WjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
11cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwHNZ7OFKQpZZ
12dlPb7kLjOIMS3ii+peSICErtMAXzhLBoq422hsiUsiIbBOs+Qcd9I+Hvzqk3O2y7
13I40fjFSK64iYb4ZbaI1oFin6JPvGXmlWRZ+Pd8k/YmdpadSb2+Ib+er/8+gwaNyD
14GWN/Oy36/XObAcrdtDeHA6Z15hAkN4rEkvTAi4NO0ulsiJiqbU6yk9fc/TpFQwzt
15z1qzddGPQr/htXcIw5BB1KjFK6mzTJ3ZNnF5tdyIolyOLId17pm1jOfvhMeMb0Ly
16nqZtF9HUl2tAYVTGlpSIuZ9dnbQqdq07wh9L/HHClnlRUUMU8QhmQqmvoBYIFitE
17kcbvEvKxRQIDAQABo2AwXjAdBgNVHQ4EFgQUMwdwJWd27uBFsrgMHHjdaDO3ZbEw
18HwYDVR0jBBgwFoAUEcPZ6DhkrODvSdoiTiHrQIRgHWIwDAYDVR0TAQH/BAIwADAO
19BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBALWKrxRA0Sdo9t3UlFpO
20vpSGGb+CEVhoyBybG7Yk/au30VGvLiPSHGpfUkEHVYazMHdWYPEZjWy70C+zgS4G
212kfDvRHMdfaHVySLv3RYtDZupPhzeoSqbsb5XBO6QeXCnWYDhhuq1k7CijFEmxu2
221uwNWmcQDk3SzHzlNr+Ldzg4ELw0LDajIZzZcDLihoc6eVAX+SschYMu6FySnY7f
23bvT5a941Ik/+vnyMh4RgQYX9lQuTyu6xk5Y5CDgyFRk+bu15gsak2Q2qe1znCITs
24fRSIslutDbcvTGm4jA6uWv/gjaX8mGzxgZJ+lfa11ObvadjQehEDzmCJeF+8AbeW
255qM=
26-----END CERTIFICATE-----
27-----BEGIN CERTIFICATE-----
28MIIDOjCCAiKgAwIBAgIJAIZjiC92oa9wMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
29BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
30MTE2WhcNMzAwNzEyMTgyMTE2WjAqMSgwJgYDVQQDDB9MaWJyZVNTTCBUZXN0IElu
31dGVybWVkaWF0ZSBDQSAyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
32+NU3oCKDBS5aCVHvovtFZC11bw83XPbDoQy1OidIkNyvgxq9RsXfNXZv2TInFmPO
33yQeD1a3IXwrUQBShLJpsGsDHzOvHdM7jErUKyyI+fwU/wuTRDErJ9x89I6SBX91Y
34o15XAucv4tUviQGfZW8dO1JU6qnQp0MG0oEibfGhn0hJNZRUF5mqe47DmXoOV6xD
35QqQUorpJueArYC1BmY01lYG1NRz89/iD22w7wXwmO1K4dBp8iO6t9jhKYMBSw6qr
36dyW6VDfQw+WR4uHZpNrz/N3GNs9Y1cg8K2Omm3F35Iz5dtu1Y1B5S2Hfh/2gtrNy
37MiUeXyMq0vJQY4ICvWAD8wIDAQABo2MwYTAdBgNVHQ4EFgQUEcPZ6DhkrODvSdoi
38TiHrQIRgHWIwHwYDVR0jBBgwFoAUp9BBAZU2vEx/cB7vC8ZTUma+ZtwwDwYDVR0T
39AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggEBACU2
406//aNhAjjQ9vD6ASkoBAMU5P1h8qteiq9tuGC+yVD6kZji6MLzT1bt7lX8r/FnIj
41ZHboWZ51+TerTn0DZcA2XOOiBw743JTUsHWHyKgAZoGxufmiHXyKzGOUFKvqerSR
42kGK8XJuKvSTG8DUlORQNuTxAKOOhcoeSFCno3C0yYBsp8SoKCPle2bDUQIk7Bz5/
43pO6Cr5mn1hP0W+3Dlzs2Xzu31zHenLXt00s+5W9F9rQdSJywcVbXef/da/FRT/2h
44krFKv8DYXlZCN+3RGZ4pTRZ/TOyQHrk7ssRmnULvz9/hiFBrkQOJXYPPJ/am8VoS
45tLbrR/qdjLOSbuUIk7Y=
46-----END CERTIFICATE-----
47-----BEGIN CERTIFICATE-----
48MIIDLDCCAhSgAwIBAgIDEAABMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNVBAMMF0xp
49YnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTEwMDEwMTAwMDAwMFoXDTIwMDEwMTAw
50MDAwMFowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlhdGUgQ0Eg
51MTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALL51f/zuaF1qZMMxf58
52ilQcJTiduk1+hNmpBNMcjGT7buuuvC5M1tmWbqRUkwxFAd1H8Iu2lfzjekXsG29A
53bDZEnICU+qEot6AwU8K7CTwNqNL+hHQs/V1/vlwl/KSbZzHHHBucGw4nE0QP7yP4
54O2lPw8U6DAKsI0aONCMM8PVdYDb71YZneRu9YU5c2YolCbUu8TOL5q2naT70pTbO
55cQpNsEoltzLsZ/JKawey5CLfU7GkivklZ5gsw8HI0rLRCytqsIrd4woCSio/RxN+
56hRWDRi9MHAWCzxMLUn2U+Cp+Ml/SkX/ccXaxbG4fzIBxydjWUAUrGmApl3U3THas
57MH0CAwEAAaNjMGEwHQYDVR0OBBYEFKfQQQGVNrxMf3Ae7wvGU1JmvmbcMB8GA1Ud
58IwQYMBaAFNKd7pn5+wifRP570nWZzqCYkauXMA8GA1UdEwEB/wQFMAMBAf8wDgYD
59VR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQBbcQ9Y8Fgzd/h3WI5ZeS6A
60kEPFbbOR0UMmQvTTRBLvPdky2DayQMlItF8JYqploWdxsp1y022TudZxOh6Kp0M3
61z71R24/AeQFnRfWcNeOzOHoMrlGZxNgdYeB9MiGQncJ2WDJ6WAGP9DDHD5akDxW9
62aS73YDCVdKHBZXi+3MkTCycpbWXKvpx6A3Bu49V9e9ZrSPUdCM8AV3GmXKUn72Et
63dZB6b7QHDdtikTHKXJEItPDf4YeVkEPScLRWs00qtGOLoSss0dIhtkwAlLTVzulC
64y1aGXaYCT5Ywm6u/hhjUvKmYbq0zJQNwBjdFtU88LnYgjmEiG5XaXN0NIl1yqF0R
65-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/12a/roots.pem b/src/regress/lib/libcrypto/certs/12a/roots.pem
new file mode 100644
index 0000000000..68ebe43953
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/12a/roots.pem
@@ -0,0 +1,43 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJAJpHs+vFZEFhMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjExNloXDTMw
6MDcxMjE4MjExNlowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDz8ElEcDd1nRH4KsSa2qsn
8G7HHByz1fgpLkStUuEacv17/o+H1rDhGX/2icsUGUwPBe7y6I5FH0H9bTwyv68sB
9/1V1UQvRhg0DEyFXBJ8b7DMFZzZsxZiRdYCNpxpBBqiQhEuDKg5acmQ56WXFE7uE
10cqTANN2GyjuHBKwiljRIy/7CNgSOTiHwjgxhmmy9ozHEclRFD8VtU599XQjPr851
11k15m/EOhmgkz93AeXnai3fAgTfEg19DfKN2p+4aJIDVfZ/Oumq72EKE95SRi4948
12Uv6iv70G5ZVxFkOczFfGkXPZKd6TrlQM75rXbS3K0F6c2JzaRLplxz8rZCEnLAcL
13AgMBAAGjYzBhMB0GA1UdDgQWBBTSne6Z+fsIn0T+e9J1mc6gmJGrlzAfBgNVHSME
14GDAWgBTSne6Z+fsIn0T+e9J1mc6gmJGrlzAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAKxVXH2nDeFidxfWAJU8JMBkb
165JkCY1ilU7SmNF2h6ZWItWkJdW70SiU7c+WgWVaFxhttbRIff4R3S847xlwasrr1
17E+N4cHoxHVb9+cOAXKK2YOxAXmItsauQc4cYZHlpSa69S5VwMpEr0nrnerD4gSbA
189fFyA97zY7ff+J4r2BPBXoh/IiJqy2VRZ1T5rhUDwfqlovyVjiuR5aqqM9xN48ve
1958AS2HrLPNwPYseBSp9E5uaSbn6TMcUeu1DCf/uCtP+jGFcCePQdi2PZ6g5iZ/TT
20Jbkv7GvtYk6fQwzZ12+KFBU3+nLrqWSO0D7M4a71plNduNpLjlm3z+dL4DKDdA==
21-----END CERTIFICATE-----
22subject= CN = LibreSSL Test Intermediate CA 1
23issuer= CN = LibreSSL Test Root CA 1
24-----BEGIN CERTIFICATE-----
25MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9vMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
26BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjExNloXDTMw
27MDcxMjE4MjExNlowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
28dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALL51f/zuaF1
29qZMMxf58ilQcJTiduk1+hNmpBNMcjGT7buuuvC5M1tmWbqRUkwxFAd1H8Iu2lfzj
30ekXsG29AbDZEnICU+qEot6AwU8K7CTwNqNL+hHQs/V1/vlwl/KSbZzHHHBucGw4n
31E0QP7yP4O2lPw8U6DAKsI0aONCMM8PVdYDb71YZneRu9YU5c2YolCbUu8TOL5q2n
32aT70pTbOcQpNsEoltzLsZ/JKawey5CLfU7GkivklZ5gsw8HI0rLRCytqsIrd4woC
33Sio/RxN+hRWDRi9MHAWCzxMLUn2U+Cp+Ml/SkX/ccXaxbG4fzIBxydjWUAUrGmAp
34l3U3THasMH0CAwEAAaNjMGEwHQYDVR0OBBYEFKfQQQGVNrxMf3Ae7wvGU1Jmvmbc
35MB8GA1UdIwQYMBaAFNKd7pn5+wifRP570nWZzqCYkauXMA8GA1UdEwEB/wQFMAMB
36Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQDbJGgyaDKOImHw
37vAz3U85LepztUXNp1OZbL7OIhtU2bEmOr7EcM1oyDIW/4Re71GaiQBRb+aMCEWvu
38pSr56JrxEXl6O/f/2OfyYEHcvCp7Bx4Ua6FzD9QNhMUEkcyJFPHBFm5uGII4POhY
396SZxG109CbVthBk806BxRCwJLzYhMKNZjpappm5tClBR7XELT9/HtAawIZVOUksM
407ER7FlrxYAMYvC/u446qHB7lzZT8ZO9kleItHNG5cTtNPfuNirzFVf3JgJey4rgR
4187evEAnLrj0qB9t6Dxp9miGa1w1YAn1s3xI+hV0ePDqr4aS+a44F3VZY0/tSXfnH
42/REXE1YR
43-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/13a/bundle.pem b/src/regress/lib/libcrypto/certs/13a/bundle.pem
new file mode 100644
index 0000000000..d1b82bcdea
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/13a/bundle.pem
@@ -0,0 +1,66 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 2
3subject= CN = LibreSSL Test Intermediate CA 2
4issuer= CN = LibreSSL Test Intermediate CA 1
5subject= CN = LibreSSL Test Intermediate CA 1
6issuer= CN = LibreSSL Test Root CA 1
7-----BEGIN CERTIFICATE-----
8MIIDLjCCAhagAwIBAgIJAIZjiC92oa90MA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
9BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDIwHhcNMjAwNzE0MTgy
10MTE3WhcNMzAwNzEyMTgyMTE3WjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
11cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA1YMg6pi0LVSV
12S0BbVKpnd6xnp9acp7brFJuSiM0S3aIU1aNZcQTgoI+LUpho558zdQj+Opj9jDCd
13XHHOaD3cVIJbXLoIZDCGi4RX19SDSRS7hkoOf+YOpXutg6bKSOhGZronAjSC41+e
14v+knMgOc/QKOehpLDWaWxHgtHDQ58sdEDMUNjm31nL3e9AS0e2IhjUj4vv6tO98z
15kVDYBJc0oQMM6z7RKZijdSgPPFVK4RIYqleWTqlXtSC6z1QaAvKfp0XFw5F9nKeX
16WOgy/Wf1ORfA3RXFT9/sky+VGWMGUTag0GKRbr2r2jAX1gR1nKXctZ++JDjGKdXQ
1787NM++NfbwIDAQABo2AwXjAdBgNVHQ4EFgQUazejwe6tFK3kpjjClSMOcqqF8V8w
18HwYDVR0jBBgwFoAUfZSWM6AdwB0zUegZlghD5+lTcyEwDAYDVR0TAQH/BAIwADAO
19BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAK8/0+B0rPs6Qi0del0u
20REo6tBzDvSSjsvWdry6U20OKxKLR1QFj/MpgfDQjrxm4Lf9UvCko/FNQ//aVZEFT
21he4BcjKnWcGhMAF0+UZt0+6120Xs1CEXUmCwKBoqEwzSNpEq00F5WI84uNZxl0MS
22R1QaNkwG3Mw0BmlO4+ArWeNUOf5RngCKLHxnIamQIwRXqDTNrVNnb8Z4WDkqFfIY
23fqKSNR1lwitxpY+DFRvF7zhpBAVsSZYq6inHh6ZsI6+jveLQ2twt+693zT7sYYpL
24uD6L5BKTvcOT2Uxc5BxLcfaxC4odizj+DzrnKVK2t88sd58/T5XJA5n3Kh3lLJcg
25Qd4=
26-----END CERTIFICATE-----
27-----BEGIN CERTIFICATE-----
28MIIDOjCCAiKgAwIBAgIJAIZjiC92oa9zMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
29BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
30MTE3WhcNMzAwNzEyMTgyMTE3WjAqMSgwJgYDVQQDDB9MaWJyZVNTTCBUZXN0IElu
31dGVybWVkaWF0ZSBDQSAyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
32wqD3B5bbnmJjVeaxbiEwrCzTj7E//IS/ezm8iKHcA3Njj+mXQUA/IIE4jZ4z+TxC
33XimswwBma6wjR50/aTuD3wXg1duPxYLhc5BqCTjp15kfcTz7LuTrwgoOpU7chanD
34nd9rSgEkQZpzHikePm9621tp5F7YXjnTwC24ZjOo89FezNGreFJS5U9HGYswJd2T
352rYERYp0wfM2j3LlHesru3eMrCK6okPndHdtVmVW9boH/UX0KSzT77kqmJHOHgJR
36GVMRe/Lpr7rJ5Jy327m3VuN2ZKi7DN+WNtjM5tywT1Bo/t3EHrdi4/t5W8cIcUrz
37YUJU+JDsjkZg2XPQNifb7wIDAQABo2MwYTAdBgNVHQ4EFgQUfZSWM6AdwB0zUegZ
38lghD5+lTcyEwHwYDVR0jBBgwFoAUb8UN92DSB9rOS3dd5CRiF9dNZ8UwDwYDVR0T
39AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggEBAIEu
40QuXlSf8FI/zku5pI3/ZobhFI69qgVuqeCb2KwtfqpRkyeF2VtwfbzYiwsMzx5JfT
417ZtAp1kVkOiGEBhXa8+jjQ4pr2ZtOqTX2ATuBWfoG6+ypZ2Coupi9sr9O6q4vlo7
42L+1lnBtbmz9eFRjQLN/qvDOHMa23e9Oacva2mJAZEyGYymhRtj8EQB6yVwVjIp1G
43VPHNjboXK6ExE5AWAFbuU1jCr3OEWSR0ZFLMNrWrLW6wECOwM1e2S2QAGPQg1rEE
44MTdt1QwHICxwCtEe4BVA2Eq8Q4gr/ooYT8rJzMugASD8Ep9wMpBR+GnBsi5BMxG1
45y/6Phm86zMp38EvM7xM=
46-----END CERTIFICATE-----
47-----BEGIN CERTIFICATE-----
48MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9yMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
49BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjExN1oXDTMw
50MDcxMjE4MjExN1owKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
51dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM/CL/CQq55g
52NeXWbRin/sIL41yLcGThjQ1qyHTe2YthmHKZ9NbGepX9c/ZmXMt3bgtK3WfDliq9
53nWcntg4s9MPjWvg4+OoHCdBbcxvUQlzwUsvLprUeNgm84UT741kkMpk7pNxSisN7
54ZOt8WYAReKNmPejjyCsHwwS8M02WVeKoW37F4FwoCWJBFPbckCe7HRTgs358wNfw
55BDXQwsk4q5hRK96SUo7/05Ao1NvXLYNobwwXw4t9WEo5KFtRYNeq6hZwYcMbmnCU
56xrbc72h/qWOey4A/jWPt8421lexBfGpAKIyZZ5YY5zYCz5tcL0oa1yPc8OuCpRh8
57yxlOuNK4r9sCAwEAAaNjMGEwHQYDVR0OBBYEFG/FDfdg0gfazkt3XeQkYhfXTWfF
58MB8GA1UdIwQYMBaAFD071KCsugg3WFVTduBY6SR4qhO5MA8GA1UdEwEB/wQFMAMB
59Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQAsa1Q6aIYVI8bB
60yer60z4n1Stat0O3F44U4Wak4rrvUwLUmbaOG/1VMskhYozc4LB01WkfFkqaFQ4r
61M8boWzrxzhsRWoQG0V+FvWjfBP9dw9aAXjM2Hj81/+szA40S5JxARPLUL/rOtu1d
62RzxlCnRauaSNOD5xCsbLZABidjd6XckOiHqDlW3RZPV3Hga/CEImGney6JUeyDbm
638ZgHxnjEXvasOwdkkBTVFEoVUNXwkQsVr+vL3n27G/7HjLvJ0D3spmXSQOCec6nI
64BapvSh4Lk/SRdynrzudGVetMCqlQofwFSovK/miI/8tjaJpBe9r94MmuJ4QfrgTC
65mSr7K0Pl
66-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/13a/roots.pem b/src/regress/lib/libcrypto/certs/13a/roots.pem
new file mode 100644
index 0000000000..9a2a8e9cdc
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/13a/roots.pem
@@ -0,0 +1,42 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJAP9GMmT8XquUMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjExN1oXDTMw
6MDcxMjE4MjExN1owIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDHBhU5Yf0rg9dYSmmTRLmn
8ruUcrpRiwMaocIaslVIN7UAxsITh0r0sPB/m0kf9BdPO4w2tL41xrropL6cxWeTa
9eWdh/G4QnVdDQ4hK/0b8zOfI88reWOlpKxyxg0ctAddSQlKJ5D0dP2Fsh7lm22X6
10s3DUDMPnoe7XhJZPrz88MIHY1Vyv8pSO16LmOsk3uwGGiIX2Pvnxf2vhYgavbu2U
11JldA/jWMa/T8EhJ2NyxkIYKScrd3BDWueC/hOsiByDOoa9PJ7nqRlu2w6QS+gq3x
12ne0xGreZvBUsJorSpzvuRnG1pSiIiAh7CM9JBccpFWkN7c0FeaHnjJiwcWcAcxen
13AgMBAAGjYzBhMB0GA1UdDgQWBBQ9O9SgrLoIN1hVU3bgWOkkeKoTuTAfBgNVHSME
14GDAWgBQ9O9SgrLoIN1hVU3bgWOkkeKoTuTAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAxlPSmBK/xgRQS70EZ7b0/x+Q
16jOJVD+Udh3cSvx4NOQ1s2utJatn/5q7atKIKTvgIZ/1VL/VrykjS07HCqbPTJmIC
17TenpmPexXjajrNTDvl0Q0qFBshKo4Ny64QCQy3enOeI7yGqzX3dcXRZsdTO+5cI7
18xZecF+Fhrp4dASDXa82RDBKhpGirjmFnuUt91j8RFz0Eny76YIrB1fGQG3/ajBJt
19IxDNGtUjOj60No05rhLMlJU9UYzFUMp2dL6d1DaVkG97xdEBMOtI+hGBYfIY4ylc
20c1f3r6YaTcTbcxjwsDlgfYJ8TsMVBBJZ9NORWs/8vRia3fX4Y9f7BusLz0+ShA==
21-----END CERTIFICATE-----
22subject= CN = LibreSSL Test Intermediate CA 1
23issuer= CN = LibreSSL Test Root CA 1
24-----BEGIN CERTIFICATE-----
25MIIDLDCCAhSgAwIBAgIDEAABMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNVBAMMF0xp
26YnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTEwMDEwMTAwMDAwMFoXDTIwMDEwMTAw
27MDAwMFowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlhdGUgQ0Eg
28MTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM/CL/CQq55gNeXWbRin
29/sIL41yLcGThjQ1qyHTe2YthmHKZ9NbGepX9c/ZmXMt3bgtK3WfDliq9nWcntg4s
309MPjWvg4+OoHCdBbcxvUQlzwUsvLprUeNgm84UT741kkMpk7pNxSisN7ZOt8WYAR
31eKNmPejjyCsHwwS8M02WVeKoW37F4FwoCWJBFPbckCe7HRTgs358wNfwBDXQwsk4
32q5hRK96SUo7/05Ao1NvXLYNobwwXw4t9WEo5KFtRYNeq6hZwYcMbmnCUxrbc72h/
33qWOey4A/jWPt8421lexBfGpAKIyZZ5YY5zYCz5tcL0oa1yPc8OuCpRh8yxlOuNK4
34r9sCAwEAAaNjMGEwHQYDVR0OBBYEFG/FDfdg0gfazkt3XeQkYhfXTWfFMB8GA1Ud
35IwQYMBaAFD071KCsugg3WFVTduBY6SR4qhO5MA8GA1UdEwEB/wQFMAMBAf8wDgYD
36VR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQC9lFeRTGBue02193jAgKoR
37hQYkoxMkLo2M/tV5HflKL98Cs/mUntW0+E9GHTyQpKjXJNMbppzwlYe9R+wuxYox
38sI+vGcrjlIqPnB1R6eU5hbMlLVNdMD/K7CH2UkzBhFwrPq6W/pkn9t2dzWlxyvgN
39C2HyGu5MsTJDPpdhw6Sy8zr0ekjw35EQWdaFngN7Xy1jHRWJPFSz5CI4wEZMBO+Q
40WK9iBZDQ/KRnCXD9gqJ7xKUpbrBwxr4cXgL0g82nB3+3Iqrd4pE64nv3tPkDlzvG
41P/677g3MW0O/X9Zz+23fjEjVJssl6lClmZXPtSifWmFMYBqaGrz85WWIT/B0SOKV
42-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/1a/bundle.pem b/src/regress/lib/libcrypto/certs/1a/bundle.pem
new file mode 100644
index 0000000000..f4ad3d1887
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/1a/bundle.pem
@@ -0,0 +1,21 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDJjCCAg6gAwIBAgIJAIZjiC92oa9SMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjA1N1oXDTMw
6MDcxMjE4MjA1N1owITEfMB0GA1UEAwwWTGlicmVTU0wgVGVzdCBTZXJ2ZXIgMTCC
7ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMV1VFKIoM4uVhCyFD6tHVYh
8xHH+LbSJJchsDBsTMUWP1lIr4p3dBzH+GJ1N5jGKjTqLVoYFD5TnGXkGYXF/alef
9fQgCgvaN4iNzI/kzKNh7AYuMmyPoFG1GCwEI8vbPowXRuDBf/BVLeJmx99lu9KNb
10N4CRWhDhpv4eRve2sH/P8lpj5GWVRjOSY1EGXpWHVqGSOucMPu2KPMch7YB/gr+q
11AOFnmrFs0FJ6ViCfJ9EsCWiQhiTRU2gpBsjHvR7LsnWuF4ToRhCiu7YgRvwXJncw
12Hm0zFSdbiTiZanYfUmdxZKRyBFBNSE/023u/uFVW4wQ9ECVQ+nGCR42KwrK4CzcC
13AwEAAaNgMF4wHQYDVR0OBBYEFFc8CXKX3vm18gzoEZcP37jOZ1NGMB8GA1UdIwQY
14MBaAFPY/uIVNcY89Xl/bEnW0qi6X1iGPMAwGA1UdEwEB/wQCMAAwDgYDVR0PAQH/
15BAQDAgeAMA0GCSqGSIb3DQEBCwUAA4IBAQBBf4VNVEydtw2PfWVH3YNUpUa8ekty
16cXlNQ2unfRWPOvNK5IrwTqco/wO8qMOX9l1/9J6++24/M73e8rHnf2fXZ2OolBxM
17xisAGNXOy1p1aM3X2a2H3OM8o9QPp7Y1KEJ0QIgWaWvvyVZuTbS4ls4wds9xNNft
18c/DnoTUi7ARe8caAuiQUAD1WxuV4hjAVxxnQGFKDmRz3iRPRtCuY+aFGdVA2cW7J
19hV7zEzTTqPXxOPUMclqKiqVgFDclqeTFqTVSzwDmIoZ09awj/9sO9xdUUhtIuqVZ
209miweoRDlOAeLw0s5MUrn0vpLBEyRx6b/6HGbKI0Pzz3zXhAfBTjrul8
21-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/1a/roots.pem b/src/regress/lib/libcrypto/certs/1a/roots.pem
new file mode 100644
index 0000000000..be7067511a
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/1a/roots.pem
@@ -0,0 +1,21 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJAMAe1EMDFvmFMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjA1NloXDTMw
6MDcxMjE4MjA1NlowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDOgk8xcDWQdv8HppLxJuNQ
8JIwReWzfMofHVxsrt4gLCCaZh7SAx2RYWMrG4Aq3n4oimjIntBo2okJd4vV2KEEh
9/upq35urYhihKyGO+oCMm5t8mL/fPFX1FbrHRAaJlSqthlBpfkx3r6ys/jZUNoH7
10Lv8ly46xK4rtU8AyTgNs+wsBhCwUy0uSXFZ2rQNnKiDnfVdReE2+EGG4UZutg7KV
115vch8i91yw4VzYORMB7Ix2mHde/W7ehUHvQ+E8pVWW9qhtHgUzQzugMyct/vs+ho
12+Y1BDMA78NhA/RtTgNv/N6YzeXeOh0LrwNOd8mWYOwWhKahPnpIJ5Ebp/jZ6MMQ/
13AgMBAAGjYzBhMB0GA1UdDgQWBBT2P7iFTXGPPV5f2xJ1tKoul9YhjzAfBgNVHSME
14GDAWgBT2P7iFTXGPPV5f2xJ1tKoul9YhjzAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAUNYTqtizYjXT29Remvg8CjgL
16SmLJUKU1BTb6rYX72WiyfX9Ea7oDQWaj83b7cARZ2mLBd6diSL9bky/r1nzRGjs6
17aauwGur3DXmhkC9T1G8XQnVwQj5h/hBdHwptq70Dqn1RDx9QmvlykRoWOB7CxFU+
18FdidLGnl2C3h4dTQFnikEbici6bcBNX7S63TOvqUsBSdy7nnH/soHow39D2pFWK4
19xnYDiof+JCZcyqdJh3cfDBoxD5UIgzG0nD4Uyur97QQF75lCGmBXL2NsvYjeRQNu
20LUoC75/pUjO8MuqDBn2mVY79KuwNo2s3sg2mgfMObbiZlVAZ5OsQXT1RKcKJog==
21-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/2a/bundle.pem b/src/regress/lib/libcrypto/certs/2a/bundle.pem
new file mode 100644
index 0000000000..4b6a0a3b1f
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/2a/bundle.pem
@@ -0,0 +1,44 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 1
3subject= CN = LibreSSL Test Intermediate CA 1
4issuer= CN = LibreSSL Test Root CA 1
5-----BEGIN CERTIFICATE-----
6MIIDLjCCAhagAwIBAgIJAIZjiC92oa9UMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
7BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
8MDU4WhcNMzAwNzEyMTgyMDU4WjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
9cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA0h18zKM0rDp9
10fmI/AMfVbtGgV6X19DtDZhTFSijImFPfPgJeB5UWVfS+WD2SeqIjuKgkOzlLgp7d
11cFiH3dtrH5D1ap0KxrCEl0ebfhc6yoINa4WDN4XLDrcwXvm16S56/JLISXpsER4J
12tvqKbKWh6AK6FPKKIuQqjmLPaUbZjEHDVY+KsSPS24mvo24Q/qmylxM5yJYSmGKJ
13wkKz/6NSg7y93iS7FVIK/uI5OyvvQkCiBIO7j9Rocu83X0AJ+iMErCd68cX7mvZU
14ZOLkFju+7RnhCQ1O5HQC5JArU+NB6ihZYvUdg224CUPwWblIbucCKwrVZmBQ9Oe6
15o4TkdGTxcwIDAQABo2AwXjAdBgNVHQ4EFgQU45XonVbBS2BEYA4r4Xm//JIxipIw
16HwYDVR0jBBgwFoAUYbbA1hiIBFoAFXHDYlxmhcW9jYUwDAYDVR0TAQH/BAIwADAO
17BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAM5fWsbQJShpyoAXMnWB
18irzIKki4kfJacy7LhyYF0mTtc+P58b7ThCLfOBRuLONHrKOUx/X2gyPKnOrs5S/6
19ajGU/pYUVdk2HKaDVum4dJqNcFUEFvsVYEZKn4VQzQWUo40QlMbKkBHp8wnfQ54X
200TE0B7fxIx8l+VPsH7FhPanyTXk9MIzCBLWfSIjUYVeuONXcIdlDTq2zXnjcMpXW
21U0SruwadhvLOG0/UdYi5mKDAdIPN507MWigamKQ/0tgie9MY5KhqEAWk6BV3+qwn
222KG7kaSAqDKrqDVXf2xJ5OH+Ox3YTzRS9uXNES7mCu2ZFNEq3q/A0JbJpJrxuPcD
23FZE=
24-----END CERTIFICATE-----
25-----BEGIN CERTIFICATE-----
26MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9TMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
27BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjA1N1oXDTMw
28MDcxMjE4MjA1N1owKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
29dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPinvxm2Rh5L
30mf8eNY31i6zYlESkYmx2IZ5zleaB8ozb8kp2u4OMCpV1kQywXQvd7AD/H3JdSS7e
31xjdyOGvo6kruyNmQt5bAjm9R1Rmt9MAw0gQa5ZOpxeWsyMqgrHqDIE55iekmmoHJ
329FwonjtLHxll4zOR77hinup6YEndNZjVR3eKQZAr7oi5cATOun5FNAWZ04198agu
33grsDsHHen8jb7JmxOqHEANa4cEMo+jdOEZH4sgS4CiEkkAu4AvPetiX06HZvPinS
34hZDWn5aY3R8NNKtrpI2CPbOHpszn+wQG+En7lgMeL7eplI3saeM2WqckF0k3VqAM
35O9c8RLW5+/cCAwEAAaNjMGEwHQYDVR0OBBYEFGG2wNYYiARaABVxw2JcZoXFvY2F
36MB8GA1UdIwQYMBaAFBPsovtqYAxK47+e5g6EiIPxhONlMA8GA1UdEwEB/wQFMAMB
37Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQAaeh9rUwVxErc1
381MglLIHjsa146YMvKPv1IRlrNYGDapldhQI/34lhb9PDff5DnoIR0aB9cHRDM8ML
39XBeqwROjLG8MPrH2wdjvO+ohRETcgq0pdSNwFYbeGY2v2jCs3pVDZie2/oW04EKJ
40XAr4tNnAEUxhypc3Ek+iPzfU1AIgf3C/6JyuivvlCdZr1QQkIh/5PR3lyOkEeXcH
41nnIZNtlzlooPCwqLqPwaXZ/0ZkgAv1ypSfKtm9kIr44y4G5riq2YGhVJaxf0gC+v
42WRZRoJafdYF+woBRLn03ADIxqNWeME7jYJOGlhOfp5H7xDTm6uJ1i2UQU7jvF9Rb
43Tgfsw9Is
44-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/2a/roots.pem b/src/regress/lib/libcrypto/certs/2a/roots.pem
new file mode 100644
index 0000000000..4d3a336b71
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/2a/roots.pem
@@ -0,0 +1,21 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJAKZHvhj0hDxUMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjA1N1oXDTMw
6MDcxMjE4MjA1N1owIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC+ZMNbBXFktbGFKvdNzWHI
8YTGWFoxejeRNPdQYnzd0I86N/n2tC91CThwoshk8eC729797YLasj5YA7nF6pyAM
9lp4pX4GVNbxG3YqDAnJwZ4vSmSJViyV4GwUucUE+09EWxtlgp4ByQqg7Kmn2XaDw
10eUavSaic1Yb/pZG2UQsDlIEnHIavohkyBbm9yHk+KAcJldATSsG8I/7iOmXf3grK
11PjB7jq2q75YmpWemsWv6FFZtTeyCQFAeJx3Bix+p/0l5NwzLEsnUy8hbiRIwTu7e
12wwy5HDApB9gvo+QbCRZhLL2rCodRjW6SJkvq0Swz+9MAVWBJnds4a1jUsNH0ZwHN
13AgMBAAGjYzBhMB0GA1UdDgQWBBQT7KL7amAMSuO/nuYOhIiD8YTjZTAfBgNVHSME
14GDAWgBQT7KL7amAMSuO/nuYOhIiD8YTjZTAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAhqv9lbZ7Wndh2++7+AEAkqP8
16L2yDWMiS8pSrayJUBH6Y/LRpEazlbYL3hXv5nIp2acGwGEP7th9cHshJktzJDWF7
17tzzFX96fQFHIDb70PH8UmbWdj6sg+fBAfnC3xpinqiplADdqVxusPI2mdxB7BPcs
18CxSrjPPavk0d5nzzWaPVMk8PMqFlryzNvTmwWzwYa166xZj5jcoiVhFEnLwhNY0c
19lSAxFI3WT6UJAKldc5atQUJOTJvdQlZP003ubknBH3FDObqh8Wo2T1Ao/xygxHTX
20iYDTxULu3ShVFajzJKFKhVFBG2S6WPobc01NaIF7x/ZmkJMrJE7Jvyi8wYTOkA==
21-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/2b/bundle.pem b/src/regress/lib/libcrypto/certs/2b/bundle.pem
new file mode 100644
index 0000000000..64db70ac38
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/2b/bundle.pem
@@ -0,0 +1,22 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 1
3-----BEGIN CERTIFICATE-----
4MIIDLjCCAhagAwIBAgIJAIZjiC92oa9UMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
5BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
6MDU4WhcNMzAwNzEyMTgyMDU4WjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
7cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA0h18zKM0rDp9
8fmI/AMfVbtGgV6X19DtDZhTFSijImFPfPgJeB5UWVfS+WD2SeqIjuKgkOzlLgp7d
9cFiH3dtrH5D1ap0KxrCEl0ebfhc6yoINa4WDN4XLDrcwXvm16S56/JLISXpsER4J
10tvqKbKWh6AK6FPKKIuQqjmLPaUbZjEHDVY+KsSPS24mvo24Q/qmylxM5yJYSmGKJ
11wkKz/6NSg7y93iS7FVIK/uI5OyvvQkCiBIO7j9Rocu83X0AJ+iMErCd68cX7mvZU
12ZOLkFju+7RnhCQ1O5HQC5JArU+NB6ihZYvUdg224CUPwWblIbucCKwrVZmBQ9Oe6
13o4TkdGTxcwIDAQABo2AwXjAdBgNVHQ4EFgQU45XonVbBS2BEYA4r4Xm//JIxipIw
14HwYDVR0jBBgwFoAUYbbA1hiIBFoAFXHDYlxmhcW9jYUwDAYDVR0TAQH/BAIwADAO
15BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAM5fWsbQJShpyoAXMnWB
16irzIKki4kfJacy7LhyYF0mTtc+P58b7ThCLfOBRuLONHrKOUx/X2gyPKnOrs5S/6
17ajGU/pYUVdk2HKaDVum4dJqNcFUEFvsVYEZKn4VQzQWUo40QlMbKkBHp8wnfQ54X
180TE0B7fxIx8l+VPsH7FhPanyTXk9MIzCBLWfSIjUYVeuONXcIdlDTq2zXnjcMpXW
19U0SruwadhvLOG0/UdYi5mKDAdIPN507MWigamKQ/0tgie9MY5KhqEAWk6BV3+qwn
202KG7kaSAqDKrqDVXf2xJ5OH+Ox3YTzRS9uXNES7mCu2ZFNEq3q/A0JbJpJrxuPcD
21FZE=
22-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/2b/roots.pem b/src/regress/lib/libcrypto/certs/2b/roots.pem
new file mode 100644
index 0000000000..4d3a336b71
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/2b/roots.pem
@@ -0,0 +1,21 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJAKZHvhj0hDxUMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjA1N1oXDTMw
6MDcxMjE4MjA1N1owIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC+ZMNbBXFktbGFKvdNzWHI
8YTGWFoxejeRNPdQYnzd0I86N/n2tC91CThwoshk8eC729797YLasj5YA7nF6pyAM
9lp4pX4GVNbxG3YqDAnJwZ4vSmSJViyV4GwUucUE+09EWxtlgp4ByQqg7Kmn2XaDw
10eUavSaic1Yb/pZG2UQsDlIEnHIavohkyBbm9yHk+KAcJldATSsG8I/7iOmXf3grK
11PjB7jq2q75YmpWemsWv6FFZtTeyCQFAeJx3Bix+p/0l5NwzLEsnUy8hbiRIwTu7e
12wwy5HDApB9gvo+QbCRZhLL2rCodRjW6SJkvq0Swz+9MAVWBJnds4a1jUsNH0ZwHN
13AgMBAAGjYzBhMB0GA1UdDgQWBBQT7KL7amAMSuO/nuYOhIiD8YTjZTAfBgNVHSME
14GDAWgBQT7KL7amAMSuO/nuYOhIiD8YTjZTAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAhqv9lbZ7Wndh2++7+AEAkqP8
16L2yDWMiS8pSrayJUBH6Y/LRpEazlbYL3hXv5nIp2acGwGEP7th9cHshJktzJDWF7
17tzzFX96fQFHIDb70PH8UmbWdj6sg+fBAfnC3xpinqiplADdqVxusPI2mdxB7BPcs
18CxSrjPPavk0d5nzzWaPVMk8PMqFlryzNvTmwWzwYa166xZj5jcoiVhFEnLwhNY0c
19lSAxFI3WT6UJAKldc5atQUJOTJvdQlZP003ubknBH3FDObqh8Wo2T1Ao/xygxHTX
20iYDTxULu3ShVFajzJKFKhVFBG2S6WPobc01NaIF7x/ZmkJMrJE7Jvyi8wYTOkA==
21-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/3a/bundle.pem b/src/regress/lib/libcrypto/certs/3a/bundle.pem
new file mode 100644
index 0000000000..6356e2299d
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/3a/bundle.pem
@@ -0,0 +1,88 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 3
3subject= CN = LibreSSL Test Intermediate CA 3
4issuer= CN = LibreSSL Test Intermediate CA 2
5subject= CN = LibreSSL Test Intermediate CA 2
6issuer= CN = LibreSSL Test Intermediate CA 1
7subject= CN = LibreSSL Test Intermediate CA 1
8issuer= CN = LibreSSL Test Root CA 1
9-----BEGIN CERTIFICATE-----
10MIIDLjCCAhagAwIBAgIJAIZjiC92oa9YMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
11BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDMwHhcNMjAwNzE0MTgy
12MDU5WhcNMzAwNzEyMTgyMDU5WjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
13cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApOCJ77qwjRzT
14wbl6E52KT3LjvpHhylfUYdNMVqROnXgg2eI0UYcSgZ54FTbPql/spnIrIs470npF
15qEcFrYACAsGOlFi9lEYkc0Oaoj1S5SQrm47Kk7GEdrAig2NyaW4gYFXZmat91Gh3
16cV4rBveedFk0bUKlpB06XNUb2DYNiCIXX9e2TXjB6UkfmbpuFqrHjbsMCoe/qxps
17U56edvTjBQvYyeQtWkNJDST9J+95gKv76Rs+quBbxHa2mLGeFqRc7sL3dP6XHifF
18ZoGtG9dSzB2s1YhBzNiU/4sdt0xS0kG3w+FDoq6Nig8RdsdAWF51oW0UF2KpVzdU
19tS6ZcFLpxwIDAQABo2AwXjAdBgNVHQ4EFgQULDyHbs9hAi5aTyt+8+W3cC/ckzcw
20HwYDVR0jBBgwFoAU8ibVYobhXLJ4T/Vza1Zr1ZyUZG0wDAYDVR0TAQH/BAIwADAO
21BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAGe82E9F8DDFk60oFIH9
22vgEuHDzXlwfMTtlGyiugvVgHveJPb2onTIQUhgWur11TUG8RJU8rcKKvh5nQoHEh
23iRJ46EzMFs6VDbytG060GvK6D4rJLDzjUvvHDT44KaVHUxFxfpZ9lLeUfxc6Nrua
24Gx1JN0fk5rTWepAX7nZr6smGwPd2KJe/54g+62SNCLw/lr/UtyDH2IZHRJHew0L+
25+bISegDInZAj1WntzBfDlmLTnOMhr0QHyZa3zfqlWcoDJ4fhs0wBTjofF+isxEwc
26njhV9LJhx2T9+NRUaHQHIzfxL0aax7QUAiURyEDnkDTXG1DYUM9YhmvGB0PfNyKY
27HaU=
28-----END CERTIFICATE-----
29-----BEGIN CERTIFICATE-----
30MIIDOjCCAiKgAwIBAgIJAIZjiC92oa9XMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
31BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDIwHhcNMjAwNzE0MTgy
32MDU5WhcNMzAwNzEyMTgyMDU5WjAqMSgwJgYDVQQDDB9MaWJyZVNTTCBUZXN0IElu
33dGVybWVkaWF0ZSBDQSAzMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
34pAOJi6Gfh4Z8rG2Whf5d2fCSHyt2UbTga3wRdlyrqk1SsLDPdwATr9IZrpyzUrhp
35vYX6kPhfaw7F1z+ubQ6qJSyaSXNO6DhoY7ftcnlUP+aL9Uito7shqDAaQeOf5dbJ
36wXGEOkovSVoGozkfk/KK8xL2RbHETG8LuDnK87Gg+Whr5AQc0qK4kFwIP9GjGQtE
37LkT0sWfiBz8h0m9aaBSSb8mWQMGPal6BLxiY5IZnMAmkqy5nfl8AORJD+uQ9IQag
38GH6OK9cS8RggdeBb2hCM74KQdOQc4PMCJpbWYP4gTKpwrDrUtneo75aQHxAD0Djc
39DWFzwseYSz/Wglg6h/LljwIDAQABo2MwYTAdBgNVHQ4EFgQU8ibVYobhXLJ4T/Vz
40a1Zr1ZyUZG0wHwYDVR0jBBgwFoAUkQx49J+YU6c8fvDgYBIM9Mxe+KIwDwYDVR0T
41AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggEBABGZ
42ZpLzrXiR3/V14kJP6R3RxYV6J+y4GqhDsmbDUTAWR9gyC9s94B/MzgZoy60TbsGj
43LAHPjpIKISIofOTRj4UZvvscqAAcexRcLwCIR6lTEd7uRDlTm8yOxDC8X3jSNUpm
44+mgSYaCP+QRjueeFdqa5/babEEeXvMrLkUbKgjnzgK5VB0qH8ySKl54VapVu94VG
45BRU4UYxxWu4T9hNjmJ7wSwv6m5HMuczIZld3EXswmGOqYk2NcLlRBUl4k2Osi2zI
46/Cb4s+be/6kXljcu32OaJH+7+iqyc2t/uGP+Iy1a4HSgt3oItPtFgbUV/2OeOTYq
47m1QPAxxBsWdlf2FeODQ=
48-----END CERTIFICATE-----
49-----BEGIN CERTIFICATE-----
50MIIDOjCCAiKgAwIBAgIJAIZjiC92oa9WMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
51BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
52MDU4WhcNMzAwNzEyMTgyMDU4WjAqMSgwJgYDVQQDDB9MaWJyZVNTTCBUZXN0IElu
53dGVybWVkaWF0ZSBDQSAyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
540+CxAlP+TMgqw/UQr4FljNlBbZpw3+mNIfVw/cbUw/trw7thz32chPmidy/RZYq/
552bEDw2TcoFX4PXPgTDo9ABLhQtk6sWTQcb2FIrWmob9gy/l4IVhIvaW7AUIUGT88
56uqTpjY9t5Nyrw2wF3a2wTO/q59Zm6lcRw/7GhkPDAb+MR+61L+h1uZqa4a8HDey+
5708b/6d41bitOwT/8Wd+t/CoRRJjTLMWPgq+Sbqp2YtciMBtnaeMam43wZ/ITvDFh
58kjJmmql2p8PhYWWEYYAs7TOc6VkgBEPZJ9rjp61NNl4kkKNbdYGASx7R+OF7SQHm
59aKAKLOnFK5dnaWDKj08wEQIDAQABo2MwYTAdBgNVHQ4EFgQUkQx49J+YU6c8fvDg
60YBIM9Mxe+KIwHwYDVR0jBBgwFoAUSgAdmy65L8xlEcpkckbftaXpaFswDwYDVR0T
61AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggEBAHQz
62swldhgTD8qOsISMT2yc3IXT+XMrUduqOzTkkFr5R4FjJb5z/aSHoq4ZghqeeAzCq
63vnT9rFWsXNzc/CmaaRqycxKX31iElg1c5P2FuJ/zaH0d4bg7Df8wdNJ4XuP8rW00
64lMhIYYQh9O5pDOXjytIasVSpTkaRTanykniVF+f3qswHhWijzsS4XBtUXtf1V03V
65ESrnrWOBzznmHruq3MPXonTEkS/iLjE+IEWjN+XDvpGGrjSP5qckc/dehW3vn/db
66zDFzSyZSaX28eG9mNHHlbPuFvfa+X1e2VOPm0Yuko2A8/BRouokZZ79b/QdU6u63
67uESvDZkx7K274DGamP4=
68-----END CERTIFICATE-----
69-----BEGIN CERTIFICATE-----
70MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9VMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
71BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjA1OFoXDTMw
72MDcxMjE4MjA1OFowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
73dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANMBjYjmINNC
748BedL+jRiY1T9i0q7Ur0Njd+FsuSjtHvqBsMoCM2b2ld8sQT6EIxFfBkcWCKohEg
757bsQirKdJYQuVa1qNf10Aw9OmOdCSzR5R88oWRfXA7lNzkQcm/SzrwZe4xej/bzx
76DMZApvwhP5mx95LswhH17gVbUP1iZCmM4VZcnoi4cxemTSDh2SoKH20I3Eew/3gm
77G0M9FrwnGpNC2oqR9II6EqeCeN8xZLQw61xlwgDRSXD3YxFCuW2QfXKLM3Wo7axz
78fhWWwL37oti+Q1vNrtVdp+jdJdZUJ8MINP9eYfiG6jtBdIuZZHKiKKM47ciEt0Im
79+85Zmuf1NBECAwEAAaNjMGEwHQYDVR0OBBYEFEoAHZsuuS/MZRHKZHJG37Wl6Whb
80MB8GA1UdIwQYMBaAFHP3QX0LYhTeDmM0H3dc2DzUXywMMA8GA1UdEwEB/wQFMAMB
81Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQBm/er83gbHfaEX
82CnQHxWEM9xZ7AaoqPN7AZwcavjl+P+yTtrb6jn5kQ3U6qfmbloeWjd0IVHZ7GsTl
83sqDkQn4Dh7mfIJUgpu/DDHC4sfr9WSjhM9Wq5e0lQ472e1QUYKhUrv6ht1nNcXp9
84gV0YPZWC4rbhKUCUc4WLK62DEYLn7Qbntj+oiu3cz8O8QVGYVpXrMnarKZEs+2q5
858kICsxRBPaAo+ss7g2+Fvp+3h3VPi0RgjRN5ozfu53cDYFo1VtdDYUm08fnRwhFK
86VMhQ4iW4glL6Luiar7cLpCZ0oMv14liivpk9wIlPYnYIyEb1YnfSihSoYmSSFP+g
87no8lXMls
88-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/3a/roots.pem b/src/regress/lib/libcrypto/certs/3a/roots.pem
new file mode 100644
index 0000000000..828d23f7d0
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/3a/roots.pem
@@ -0,0 +1,21 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJALAeB6nSEgWjMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjA1OFoXDTMw
6MDcxMjE4MjA1OFowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCrvqKasvWd4uAIIlUFs3UR
86a/T6QMtxmM+RCrYQRoTHzFwcWU/Zo4UqSOG2ejhdepYhthfYfaststcLnHEXv34
96Lu3mrOnaYT1vHGaianTo9Hvwvlp4RzpY+PVKVbi+5q3Jb2J6V8vnSe9RXVygxs0
10Zde3Fe5Zh5DkH42hh5i60pgoqsG9dUb3V/Q9qi+7HcUweUtKwDbGczr6Q+Wxot2B
11AgqI5zuUINi8U/2r+WypzNwetmFRsTGWMvpWQVYyHuc1LByuWqlzG/19g/yxC5Pj
120Udi/fbiRwSIKt4cyihJG3GoAkSTUdIrVifNi3+MEhnWweGb8IsC5hDeUjq5OK1N
13AgMBAAGjYzBhMB0GA1UdDgQWBBRz90F9C2IU3g5jNB93XNg81F8sDDAfBgNVHSME
14GDAWgBRz90F9C2IU3g5jNB93XNg81F8sDDAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAd3Cip+WwvVckQiGZHb2sFudL
16ctQoIwgV6J9jkxdQ+KKUU1TA4HCA7nnvmYqXIS8GGV6YJ4mfhusXHfMnJG4Tl08Q
17uigsPaBgUibQJx6e+soJOmz3eE8BYRC8/Z/xrXmW2q8/vAz1LUeeRs6hpX2Ae6q1
18R7r0h9t3XwWQVix+huE/bERILv+Z0NsYF1sw5aeKfW2TDx4NudApxUf4vgDkOvLq
19I76FQtpPWg04ZtUYTQEKJ/HsXWHrpfKIcLYd8OmBt133N70di8k2m7z+ATO4XPde
206nwq6EHv3vmolG/kUI3K2AG9yRpG1ZGFyxBF0je2zIN/rHQZ0FXEZfRi+ee9pw==
21-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/3b/bundle.pem b/src/regress/lib/libcrypto/certs/3b/bundle.pem
new file mode 100644
index 0000000000..344c7cff8b
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/3b/bundle.pem
@@ -0,0 +1,66 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 3
3subject= CN = LibreSSL Test Intermediate CA 3
4issuer= CN = LibreSSL Test Intermediate CA 2
5subject= CN = LibreSSL Test Intermediate CA 2
6issuer= CN = LibreSSL Test Intermediate CA 1
7-----BEGIN CERTIFICATE-----
8MIIDLjCCAhagAwIBAgIJAIZjiC92oa9YMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
9BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDMwHhcNMjAwNzE0MTgy
10MDU5WhcNMzAwNzEyMTgyMDU5WjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
11cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApOCJ77qwjRzT
12wbl6E52KT3LjvpHhylfUYdNMVqROnXgg2eI0UYcSgZ54FTbPql/spnIrIs470npF
13qEcFrYACAsGOlFi9lEYkc0Oaoj1S5SQrm47Kk7GEdrAig2NyaW4gYFXZmat91Gh3
14cV4rBveedFk0bUKlpB06XNUb2DYNiCIXX9e2TXjB6UkfmbpuFqrHjbsMCoe/qxps
15U56edvTjBQvYyeQtWkNJDST9J+95gKv76Rs+quBbxHa2mLGeFqRc7sL3dP6XHifF
16ZoGtG9dSzB2s1YhBzNiU/4sdt0xS0kG3w+FDoq6Nig8RdsdAWF51oW0UF2KpVzdU
17tS6ZcFLpxwIDAQABo2AwXjAdBgNVHQ4EFgQULDyHbs9hAi5aTyt+8+W3cC/ckzcw
18HwYDVR0jBBgwFoAU8ibVYobhXLJ4T/Vza1Zr1ZyUZG0wDAYDVR0TAQH/BAIwADAO
19BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAGe82E9F8DDFk60oFIH9
20vgEuHDzXlwfMTtlGyiugvVgHveJPb2onTIQUhgWur11TUG8RJU8rcKKvh5nQoHEh
21iRJ46EzMFs6VDbytG060GvK6D4rJLDzjUvvHDT44KaVHUxFxfpZ9lLeUfxc6Nrua
22Gx1JN0fk5rTWepAX7nZr6smGwPd2KJe/54g+62SNCLw/lr/UtyDH2IZHRJHew0L+
23+bISegDInZAj1WntzBfDlmLTnOMhr0QHyZa3zfqlWcoDJ4fhs0wBTjofF+isxEwc
24njhV9LJhx2T9+NRUaHQHIzfxL0aax7QUAiURyEDnkDTXG1DYUM9YhmvGB0PfNyKY
25HaU=
26-----END CERTIFICATE-----
27-----BEGIN CERTIFICATE-----
28MIIDOjCCAiKgAwIBAgIJAIZjiC92oa9XMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
29BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDIwHhcNMjAwNzE0MTgy
30MDU5WhcNMzAwNzEyMTgyMDU5WjAqMSgwJgYDVQQDDB9MaWJyZVNTTCBUZXN0IElu
31dGVybWVkaWF0ZSBDQSAzMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
32pAOJi6Gfh4Z8rG2Whf5d2fCSHyt2UbTga3wRdlyrqk1SsLDPdwATr9IZrpyzUrhp
33vYX6kPhfaw7F1z+ubQ6qJSyaSXNO6DhoY7ftcnlUP+aL9Uito7shqDAaQeOf5dbJ
34wXGEOkovSVoGozkfk/KK8xL2RbHETG8LuDnK87Gg+Whr5AQc0qK4kFwIP9GjGQtE
35LkT0sWfiBz8h0m9aaBSSb8mWQMGPal6BLxiY5IZnMAmkqy5nfl8AORJD+uQ9IQag
36GH6OK9cS8RggdeBb2hCM74KQdOQc4PMCJpbWYP4gTKpwrDrUtneo75aQHxAD0Djc
37DWFzwseYSz/Wglg6h/LljwIDAQABo2MwYTAdBgNVHQ4EFgQU8ibVYobhXLJ4T/Vz
38a1Zr1ZyUZG0wHwYDVR0jBBgwFoAUkQx49J+YU6c8fvDgYBIM9Mxe+KIwDwYDVR0T
39AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggEBABGZ
40ZpLzrXiR3/V14kJP6R3RxYV6J+y4GqhDsmbDUTAWR9gyC9s94B/MzgZoy60TbsGj
41LAHPjpIKISIofOTRj4UZvvscqAAcexRcLwCIR6lTEd7uRDlTm8yOxDC8X3jSNUpm
42+mgSYaCP+QRjueeFdqa5/babEEeXvMrLkUbKgjnzgK5VB0qH8ySKl54VapVu94VG
43BRU4UYxxWu4T9hNjmJ7wSwv6m5HMuczIZld3EXswmGOqYk2NcLlRBUl4k2Osi2zI
44/Cb4s+be/6kXljcu32OaJH+7+iqyc2t/uGP+Iy1a4HSgt3oItPtFgbUV/2OeOTYq
45m1QPAxxBsWdlf2FeODQ=
46-----END CERTIFICATE-----
47-----BEGIN CERTIFICATE-----
48MIIDOjCCAiKgAwIBAgIJAIZjiC92oa9WMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
49BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
50MDU4WhcNMzAwNzEyMTgyMDU4WjAqMSgwJgYDVQQDDB9MaWJyZVNTTCBUZXN0IElu
51dGVybWVkaWF0ZSBDQSAyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
520+CxAlP+TMgqw/UQr4FljNlBbZpw3+mNIfVw/cbUw/trw7thz32chPmidy/RZYq/
532bEDw2TcoFX4PXPgTDo9ABLhQtk6sWTQcb2FIrWmob9gy/l4IVhIvaW7AUIUGT88
54uqTpjY9t5Nyrw2wF3a2wTO/q59Zm6lcRw/7GhkPDAb+MR+61L+h1uZqa4a8HDey+
5508b/6d41bitOwT/8Wd+t/CoRRJjTLMWPgq+Sbqp2YtciMBtnaeMam43wZ/ITvDFh
56kjJmmql2p8PhYWWEYYAs7TOc6VkgBEPZJ9rjp61NNl4kkKNbdYGASx7R+OF7SQHm
57aKAKLOnFK5dnaWDKj08wEQIDAQABo2MwYTAdBgNVHQ4EFgQUkQx49J+YU6c8fvDg
58YBIM9Mxe+KIwHwYDVR0jBBgwFoAUSgAdmy65L8xlEcpkckbftaXpaFswDwYDVR0T
59AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggEBAHQz
60swldhgTD8qOsISMT2yc3IXT+XMrUduqOzTkkFr5R4FjJb5z/aSHoq4ZghqeeAzCq
61vnT9rFWsXNzc/CmaaRqycxKX31iElg1c5P2FuJ/zaH0d4bg7Df8wdNJ4XuP8rW00
62lMhIYYQh9O5pDOXjytIasVSpTkaRTanykniVF+f3qswHhWijzsS4XBtUXtf1V03V
63ESrnrWOBzznmHruq3MPXonTEkS/iLjE+IEWjN+XDvpGGrjSP5qckc/dehW3vn/db
64zDFzSyZSaX28eG9mNHHlbPuFvfa+X1e2VOPm0Yuko2A8/BRouokZZ79b/QdU6u63
65uESvDZkx7K274DGamP4=
66-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/3b/roots.pem b/src/regress/lib/libcrypto/certs/3b/roots.pem
new file mode 100644
index 0000000000..828d23f7d0
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/3b/roots.pem
@@ -0,0 +1,21 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJALAeB6nSEgWjMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjA1OFoXDTMw
6MDcxMjE4MjA1OFowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCrvqKasvWd4uAIIlUFs3UR
86a/T6QMtxmM+RCrYQRoTHzFwcWU/Zo4UqSOG2ejhdepYhthfYfaststcLnHEXv34
96Lu3mrOnaYT1vHGaianTo9Hvwvlp4RzpY+PVKVbi+5q3Jb2J6V8vnSe9RXVygxs0
10Zde3Fe5Zh5DkH42hh5i60pgoqsG9dUb3V/Q9qi+7HcUweUtKwDbGczr6Q+Wxot2B
11AgqI5zuUINi8U/2r+WypzNwetmFRsTGWMvpWQVYyHuc1LByuWqlzG/19g/yxC5Pj
120Udi/fbiRwSIKt4cyihJG3GoAkSTUdIrVifNi3+MEhnWweGb8IsC5hDeUjq5OK1N
13AgMBAAGjYzBhMB0GA1UdDgQWBBRz90F9C2IU3g5jNB93XNg81F8sDDAfBgNVHSME
14GDAWgBRz90F9C2IU3g5jNB93XNg81F8sDDAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAd3Cip+WwvVckQiGZHb2sFudL
16ctQoIwgV6J9jkxdQ+KKUU1TA4HCA7nnvmYqXIS8GGV6YJ4mfhusXHfMnJG4Tl08Q
17uigsPaBgUibQJx6e+soJOmz3eE8BYRC8/Z/xrXmW2q8/vAz1LUeeRs6hpX2Ae6q1
18R7r0h9t3XwWQVix+huE/bERILv+Z0NsYF1sw5aeKfW2TDx4NudApxUf4vgDkOvLq
19I76FQtpPWg04ZtUYTQEKJ/HsXWHrpfKIcLYd8OmBt133N70di8k2m7z+ATO4XPde
206nwq6EHv3vmolG/kUI3K2AG9yRpG1ZGFyxBF0je2zIN/rHQZ0FXEZfRi+ee9pw==
21-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/3c/bundle.pem b/src/regress/lib/libcrypto/certs/3c/bundle.pem
new file mode 100644
index 0000000000..0ce24891bd
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/3c/bundle.pem
@@ -0,0 +1,66 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 3
3subject= CN = LibreSSL Test Intermediate CA 3
4issuer= CN = LibreSSL Test Intermediate CA 2
5subject= CN = LibreSSL Test Intermediate CA 1
6issuer= CN = LibreSSL Test Root CA 1
7-----BEGIN CERTIFICATE-----
8MIIDLjCCAhagAwIBAgIJAIZjiC92oa9YMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
9BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDMwHhcNMjAwNzE0MTgy
10MDU5WhcNMzAwNzEyMTgyMDU5WjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
11cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApOCJ77qwjRzT
12wbl6E52KT3LjvpHhylfUYdNMVqROnXgg2eI0UYcSgZ54FTbPql/spnIrIs470npF
13qEcFrYACAsGOlFi9lEYkc0Oaoj1S5SQrm47Kk7GEdrAig2NyaW4gYFXZmat91Gh3
14cV4rBveedFk0bUKlpB06XNUb2DYNiCIXX9e2TXjB6UkfmbpuFqrHjbsMCoe/qxps
15U56edvTjBQvYyeQtWkNJDST9J+95gKv76Rs+quBbxHa2mLGeFqRc7sL3dP6XHifF
16ZoGtG9dSzB2s1YhBzNiU/4sdt0xS0kG3w+FDoq6Nig8RdsdAWF51oW0UF2KpVzdU
17tS6ZcFLpxwIDAQABo2AwXjAdBgNVHQ4EFgQULDyHbs9hAi5aTyt+8+W3cC/ckzcw
18HwYDVR0jBBgwFoAU8ibVYobhXLJ4T/Vza1Zr1ZyUZG0wDAYDVR0TAQH/BAIwADAO
19BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAGe82E9F8DDFk60oFIH9
20vgEuHDzXlwfMTtlGyiugvVgHveJPb2onTIQUhgWur11TUG8RJU8rcKKvh5nQoHEh
21iRJ46EzMFs6VDbytG060GvK6D4rJLDzjUvvHDT44KaVHUxFxfpZ9lLeUfxc6Nrua
22Gx1JN0fk5rTWepAX7nZr6smGwPd2KJe/54g+62SNCLw/lr/UtyDH2IZHRJHew0L+
23+bISegDInZAj1WntzBfDlmLTnOMhr0QHyZa3zfqlWcoDJ4fhs0wBTjofF+isxEwc
24njhV9LJhx2T9+NRUaHQHIzfxL0aax7QUAiURyEDnkDTXG1DYUM9YhmvGB0PfNyKY
25HaU=
26-----END CERTIFICATE-----
27-----BEGIN CERTIFICATE-----
28MIIDOjCCAiKgAwIBAgIJAIZjiC92oa9XMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
29BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDIwHhcNMjAwNzE0MTgy
30MDU5WhcNMzAwNzEyMTgyMDU5WjAqMSgwJgYDVQQDDB9MaWJyZVNTTCBUZXN0IElu
31dGVybWVkaWF0ZSBDQSAzMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
32pAOJi6Gfh4Z8rG2Whf5d2fCSHyt2UbTga3wRdlyrqk1SsLDPdwATr9IZrpyzUrhp
33vYX6kPhfaw7F1z+ubQ6qJSyaSXNO6DhoY7ftcnlUP+aL9Uito7shqDAaQeOf5dbJ
34wXGEOkovSVoGozkfk/KK8xL2RbHETG8LuDnK87Gg+Whr5AQc0qK4kFwIP9GjGQtE
35LkT0sWfiBz8h0m9aaBSSb8mWQMGPal6BLxiY5IZnMAmkqy5nfl8AORJD+uQ9IQag
36GH6OK9cS8RggdeBb2hCM74KQdOQc4PMCJpbWYP4gTKpwrDrUtneo75aQHxAD0Djc
37DWFzwseYSz/Wglg6h/LljwIDAQABo2MwYTAdBgNVHQ4EFgQU8ibVYobhXLJ4T/Vz
38a1Zr1ZyUZG0wHwYDVR0jBBgwFoAUkQx49J+YU6c8fvDgYBIM9Mxe+KIwDwYDVR0T
39AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggEBABGZ
40ZpLzrXiR3/V14kJP6R3RxYV6J+y4GqhDsmbDUTAWR9gyC9s94B/MzgZoy60TbsGj
41LAHPjpIKISIofOTRj4UZvvscqAAcexRcLwCIR6lTEd7uRDlTm8yOxDC8X3jSNUpm
42+mgSYaCP+QRjueeFdqa5/babEEeXvMrLkUbKgjnzgK5VB0qH8ySKl54VapVu94VG
43BRU4UYxxWu4T9hNjmJ7wSwv6m5HMuczIZld3EXswmGOqYk2NcLlRBUl4k2Osi2zI
44/Cb4s+be/6kXljcu32OaJH+7+iqyc2t/uGP+Iy1a4HSgt3oItPtFgbUV/2OeOTYq
45m1QPAxxBsWdlf2FeODQ=
46-----END CERTIFICATE-----
47-----BEGIN CERTIFICATE-----
48MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9VMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
49BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjA1OFoXDTMw
50MDcxMjE4MjA1OFowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
51dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANMBjYjmINNC
528BedL+jRiY1T9i0q7Ur0Njd+FsuSjtHvqBsMoCM2b2ld8sQT6EIxFfBkcWCKohEg
537bsQirKdJYQuVa1qNf10Aw9OmOdCSzR5R88oWRfXA7lNzkQcm/SzrwZe4xej/bzx
54DMZApvwhP5mx95LswhH17gVbUP1iZCmM4VZcnoi4cxemTSDh2SoKH20I3Eew/3gm
55G0M9FrwnGpNC2oqR9II6EqeCeN8xZLQw61xlwgDRSXD3YxFCuW2QfXKLM3Wo7axz
56fhWWwL37oti+Q1vNrtVdp+jdJdZUJ8MINP9eYfiG6jtBdIuZZHKiKKM47ciEt0Im
57+85Zmuf1NBECAwEAAaNjMGEwHQYDVR0OBBYEFEoAHZsuuS/MZRHKZHJG37Wl6Whb
58MB8GA1UdIwQYMBaAFHP3QX0LYhTeDmM0H3dc2DzUXywMMA8GA1UdEwEB/wQFMAMB
59Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQBm/er83gbHfaEX
60CnQHxWEM9xZ7AaoqPN7AZwcavjl+P+yTtrb6jn5kQ3U6qfmbloeWjd0IVHZ7GsTl
61sqDkQn4Dh7mfIJUgpu/DDHC4sfr9WSjhM9Wq5e0lQ472e1QUYKhUrv6ht1nNcXp9
62gV0YPZWC4rbhKUCUc4WLK62DEYLn7Qbntj+oiu3cz8O8QVGYVpXrMnarKZEs+2q5
638kICsxRBPaAo+ss7g2+Fvp+3h3VPi0RgjRN5ozfu53cDYFo1VtdDYUm08fnRwhFK
64VMhQ4iW4glL6Luiar7cLpCZ0oMv14liivpk9wIlPYnYIyEb1YnfSihSoYmSSFP+g
65no8lXMls
66-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/3c/roots.pem b/src/regress/lib/libcrypto/certs/3c/roots.pem
new file mode 100644
index 0000000000..828d23f7d0
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/3c/roots.pem
@@ -0,0 +1,21 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJALAeB6nSEgWjMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjA1OFoXDTMw
6MDcxMjE4MjA1OFowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCrvqKasvWd4uAIIlUFs3UR
86a/T6QMtxmM+RCrYQRoTHzFwcWU/Zo4UqSOG2ejhdepYhthfYfaststcLnHEXv34
96Lu3mrOnaYT1vHGaianTo9Hvwvlp4RzpY+PVKVbi+5q3Jb2J6V8vnSe9RXVygxs0
10Zde3Fe5Zh5DkH42hh5i60pgoqsG9dUb3V/Q9qi+7HcUweUtKwDbGczr6Q+Wxot2B
11AgqI5zuUINi8U/2r+WypzNwetmFRsTGWMvpWQVYyHuc1LByuWqlzG/19g/yxC5Pj
120Udi/fbiRwSIKt4cyihJG3GoAkSTUdIrVifNi3+MEhnWweGb8IsC5hDeUjq5OK1N
13AgMBAAGjYzBhMB0GA1UdDgQWBBRz90F9C2IU3g5jNB93XNg81F8sDDAfBgNVHSME
14GDAWgBRz90F9C2IU3g5jNB93XNg81F8sDDAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAd3Cip+WwvVckQiGZHb2sFudL
16ctQoIwgV6J9jkxdQ+KKUU1TA4HCA7nnvmYqXIS8GGV6YJ4mfhusXHfMnJG4Tl08Q
17uigsPaBgUibQJx6e+soJOmz3eE8BYRC8/Z/xrXmW2q8/vAz1LUeeRs6hpX2Ae6q1
18R7r0h9t3XwWQVix+huE/bERILv+Z0NsYF1sw5aeKfW2TDx4NudApxUf4vgDkOvLq
19I76FQtpPWg04ZtUYTQEKJ/HsXWHrpfKIcLYd8OmBt133N70di8k2m7z+ATO4XPde
206nwq6EHv3vmolG/kUI3K2AG9yRpG1ZGFyxBF0je2zIN/rHQZ0FXEZfRi+ee9pw==
21-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/3d/bundle.pem b/src/regress/lib/libcrypto/certs/3d/bundle.pem
new file mode 100644
index 0000000000..6e3f4e56fe
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/3d/bundle.pem
@@ -0,0 +1,66 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 3
3subject= CN = LibreSSL Test Intermediate CA 2
4issuer= CN = LibreSSL Test Intermediate CA 1
5subject= CN = LibreSSL Test Intermediate CA 1
6issuer= CN = LibreSSL Test Root CA 1
7-----BEGIN CERTIFICATE-----
8MIIDLjCCAhagAwIBAgIJAIZjiC92oa9YMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
9BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDMwHhcNMjAwNzE0MTgy
10MDU5WhcNMzAwNzEyMTgyMDU5WjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
11cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApOCJ77qwjRzT
12wbl6E52KT3LjvpHhylfUYdNMVqROnXgg2eI0UYcSgZ54FTbPql/spnIrIs470npF
13qEcFrYACAsGOlFi9lEYkc0Oaoj1S5SQrm47Kk7GEdrAig2NyaW4gYFXZmat91Gh3
14cV4rBveedFk0bUKlpB06XNUb2DYNiCIXX9e2TXjB6UkfmbpuFqrHjbsMCoe/qxps
15U56edvTjBQvYyeQtWkNJDST9J+95gKv76Rs+quBbxHa2mLGeFqRc7sL3dP6XHifF
16ZoGtG9dSzB2s1YhBzNiU/4sdt0xS0kG3w+FDoq6Nig8RdsdAWF51oW0UF2KpVzdU
17tS6ZcFLpxwIDAQABo2AwXjAdBgNVHQ4EFgQULDyHbs9hAi5aTyt+8+W3cC/ckzcw
18HwYDVR0jBBgwFoAU8ibVYobhXLJ4T/Vza1Zr1ZyUZG0wDAYDVR0TAQH/BAIwADAO
19BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAGe82E9F8DDFk60oFIH9
20vgEuHDzXlwfMTtlGyiugvVgHveJPb2onTIQUhgWur11TUG8RJU8rcKKvh5nQoHEh
21iRJ46EzMFs6VDbytG060GvK6D4rJLDzjUvvHDT44KaVHUxFxfpZ9lLeUfxc6Nrua
22Gx1JN0fk5rTWepAX7nZr6smGwPd2KJe/54g+62SNCLw/lr/UtyDH2IZHRJHew0L+
23+bISegDInZAj1WntzBfDlmLTnOMhr0QHyZa3zfqlWcoDJ4fhs0wBTjofF+isxEwc
24njhV9LJhx2T9+NRUaHQHIzfxL0aax7QUAiURyEDnkDTXG1DYUM9YhmvGB0PfNyKY
25HaU=
26-----END CERTIFICATE-----
27-----BEGIN CERTIFICATE-----
28MIIDOjCCAiKgAwIBAgIJAIZjiC92oa9WMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
29BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
30MDU4WhcNMzAwNzEyMTgyMDU4WjAqMSgwJgYDVQQDDB9MaWJyZVNTTCBUZXN0IElu
31dGVybWVkaWF0ZSBDQSAyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
320+CxAlP+TMgqw/UQr4FljNlBbZpw3+mNIfVw/cbUw/trw7thz32chPmidy/RZYq/
332bEDw2TcoFX4PXPgTDo9ABLhQtk6sWTQcb2FIrWmob9gy/l4IVhIvaW7AUIUGT88
34uqTpjY9t5Nyrw2wF3a2wTO/q59Zm6lcRw/7GhkPDAb+MR+61L+h1uZqa4a8HDey+
3508b/6d41bitOwT/8Wd+t/CoRRJjTLMWPgq+Sbqp2YtciMBtnaeMam43wZ/ITvDFh
36kjJmmql2p8PhYWWEYYAs7TOc6VkgBEPZJ9rjp61NNl4kkKNbdYGASx7R+OF7SQHm
37aKAKLOnFK5dnaWDKj08wEQIDAQABo2MwYTAdBgNVHQ4EFgQUkQx49J+YU6c8fvDg
38YBIM9Mxe+KIwHwYDVR0jBBgwFoAUSgAdmy65L8xlEcpkckbftaXpaFswDwYDVR0T
39AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggEBAHQz
40swldhgTD8qOsISMT2yc3IXT+XMrUduqOzTkkFr5R4FjJb5z/aSHoq4ZghqeeAzCq
41vnT9rFWsXNzc/CmaaRqycxKX31iElg1c5P2FuJ/zaH0d4bg7Df8wdNJ4XuP8rW00
42lMhIYYQh9O5pDOXjytIasVSpTkaRTanykniVF+f3qswHhWijzsS4XBtUXtf1V03V
43ESrnrWOBzznmHruq3MPXonTEkS/iLjE+IEWjN+XDvpGGrjSP5qckc/dehW3vn/db
44zDFzSyZSaX28eG9mNHHlbPuFvfa+X1e2VOPm0Yuko2A8/BRouokZZ79b/QdU6u63
45uESvDZkx7K274DGamP4=
46-----END CERTIFICATE-----
47-----BEGIN CERTIFICATE-----
48MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9VMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
49BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjA1OFoXDTMw
50MDcxMjE4MjA1OFowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
51dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANMBjYjmINNC
528BedL+jRiY1T9i0q7Ur0Njd+FsuSjtHvqBsMoCM2b2ld8sQT6EIxFfBkcWCKohEg
537bsQirKdJYQuVa1qNf10Aw9OmOdCSzR5R88oWRfXA7lNzkQcm/SzrwZe4xej/bzx
54DMZApvwhP5mx95LswhH17gVbUP1iZCmM4VZcnoi4cxemTSDh2SoKH20I3Eew/3gm
55G0M9FrwnGpNC2oqR9II6EqeCeN8xZLQw61xlwgDRSXD3YxFCuW2QfXKLM3Wo7axz
56fhWWwL37oti+Q1vNrtVdp+jdJdZUJ8MINP9eYfiG6jtBdIuZZHKiKKM47ciEt0Im
57+85Zmuf1NBECAwEAAaNjMGEwHQYDVR0OBBYEFEoAHZsuuS/MZRHKZHJG37Wl6Whb
58MB8GA1UdIwQYMBaAFHP3QX0LYhTeDmM0H3dc2DzUXywMMA8GA1UdEwEB/wQFMAMB
59Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQBm/er83gbHfaEX
60CnQHxWEM9xZ7AaoqPN7AZwcavjl+P+yTtrb6jn5kQ3U6qfmbloeWjd0IVHZ7GsTl
61sqDkQn4Dh7mfIJUgpu/DDHC4sfr9WSjhM9Wq5e0lQ472e1QUYKhUrv6ht1nNcXp9
62gV0YPZWC4rbhKUCUc4WLK62DEYLn7Qbntj+oiu3cz8O8QVGYVpXrMnarKZEs+2q5
638kICsxRBPaAo+ss7g2+Fvp+3h3VPi0RgjRN5ozfu53cDYFo1VtdDYUm08fnRwhFK
64VMhQ4iW4glL6Luiar7cLpCZ0oMv14liivpk9wIlPYnYIyEb1YnfSihSoYmSSFP+g
65no8lXMls
66-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/3d/roots.pem b/src/regress/lib/libcrypto/certs/3d/roots.pem
new file mode 100644
index 0000000000..828d23f7d0
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/3d/roots.pem
@@ -0,0 +1,21 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJALAeB6nSEgWjMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjA1OFoXDTMw
6MDcxMjE4MjA1OFowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCrvqKasvWd4uAIIlUFs3UR
86a/T6QMtxmM+RCrYQRoTHzFwcWU/Zo4UqSOG2ejhdepYhthfYfaststcLnHEXv34
96Lu3mrOnaYT1vHGaianTo9Hvwvlp4RzpY+PVKVbi+5q3Jb2J6V8vnSe9RXVygxs0
10Zde3Fe5Zh5DkH42hh5i60pgoqsG9dUb3V/Q9qi+7HcUweUtKwDbGczr6Q+Wxot2B
11AgqI5zuUINi8U/2r+WypzNwetmFRsTGWMvpWQVYyHuc1LByuWqlzG/19g/yxC5Pj
120Udi/fbiRwSIKt4cyihJG3GoAkSTUdIrVifNi3+MEhnWweGb8IsC5hDeUjq5OK1N
13AgMBAAGjYzBhMB0GA1UdDgQWBBRz90F9C2IU3g5jNB93XNg81F8sDDAfBgNVHSME
14GDAWgBRz90F9C2IU3g5jNB93XNg81F8sDDAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAd3Cip+WwvVckQiGZHb2sFudL
16ctQoIwgV6J9jkxdQ+KKUU1TA4HCA7nnvmYqXIS8GGV6YJ4mfhusXHfMnJG4Tl08Q
17uigsPaBgUibQJx6e+soJOmz3eE8BYRC8/Z/xrXmW2q8/vAz1LUeeRs6hpX2Ae6q1
18R7r0h9t3XwWQVix+huE/bERILv+Z0NsYF1sw5aeKfW2TDx4NudApxUf4vgDkOvLq
19I76FQtpPWg04ZtUYTQEKJ/HsXWHrpfKIcLYd8OmBt133N70di8k2m7z+ATO4XPde
206nwq6EHv3vmolG/kUI3K2AG9yRpG1ZGFyxBF0je2zIN/rHQZ0FXEZfRi+ee9pw==
21-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/3e/bundle.pem b/src/regress/lib/libcrypto/certs/3e/bundle.pem
new file mode 100644
index 0000000000..6ef7a41562
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/3e/bundle.pem
@@ -0,0 +1,88 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 3
3subject= CN = LibreSSL Test Intermediate CA 1
4issuer= CN = LibreSSL Test Root CA 1
5subject= CN = LibreSSL Test Intermediate CA 2
6issuer= CN = LibreSSL Test Intermediate CA 1
7subject= CN = LibreSSL Test Intermediate CA 3
8issuer= CN = LibreSSL Test Intermediate CA 2
9-----BEGIN CERTIFICATE-----
10MIIDLjCCAhagAwIBAgIJAIZjiC92oa9YMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
11BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDMwHhcNMjAwNzE0MTgy
12MDU5WhcNMzAwNzEyMTgyMDU5WjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
13cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApOCJ77qwjRzT
14wbl6E52KT3LjvpHhylfUYdNMVqROnXgg2eI0UYcSgZ54FTbPql/spnIrIs470npF
15qEcFrYACAsGOlFi9lEYkc0Oaoj1S5SQrm47Kk7GEdrAig2NyaW4gYFXZmat91Gh3
16cV4rBveedFk0bUKlpB06XNUb2DYNiCIXX9e2TXjB6UkfmbpuFqrHjbsMCoe/qxps
17U56edvTjBQvYyeQtWkNJDST9J+95gKv76Rs+quBbxHa2mLGeFqRc7sL3dP6XHifF
18ZoGtG9dSzB2s1YhBzNiU/4sdt0xS0kG3w+FDoq6Nig8RdsdAWF51oW0UF2KpVzdU
19tS6ZcFLpxwIDAQABo2AwXjAdBgNVHQ4EFgQULDyHbs9hAi5aTyt+8+W3cC/ckzcw
20HwYDVR0jBBgwFoAU8ibVYobhXLJ4T/Vza1Zr1ZyUZG0wDAYDVR0TAQH/BAIwADAO
21BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAGe82E9F8DDFk60oFIH9
22vgEuHDzXlwfMTtlGyiugvVgHveJPb2onTIQUhgWur11TUG8RJU8rcKKvh5nQoHEh
23iRJ46EzMFs6VDbytG060GvK6D4rJLDzjUvvHDT44KaVHUxFxfpZ9lLeUfxc6Nrua
24Gx1JN0fk5rTWepAX7nZr6smGwPd2KJe/54g+62SNCLw/lr/UtyDH2IZHRJHew0L+
25+bISegDInZAj1WntzBfDlmLTnOMhr0QHyZa3zfqlWcoDJ4fhs0wBTjofF+isxEwc
26njhV9LJhx2T9+NRUaHQHIzfxL0aax7QUAiURyEDnkDTXG1DYUM9YhmvGB0PfNyKY
27HaU=
28-----END CERTIFICATE-----
29-----BEGIN CERTIFICATE-----
30MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9VMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
31BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjA1OFoXDTMw
32MDcxMjE4MjA1OFowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
33dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANMBjYjmINNC
348BedL+jRiY1T9i0q7Ur0Njd+FsuSjtHvqBsMoCM2b2ld8sQT6EIxFfBkcWCKohEg
357bsQirKdJYQuVa1qNf10Aw9OmOdCSzR5R88oWRfXA7lNzkQcm/SzrwZe4xej/bzx
36DMZApvwhP5mx95LswhH17gVbUP1iZCmM4VZcnoi4cxemTSDh2SoKH20I3Eew/3gm
37G0M9FrwnGpNC2oqR9II6EqeCeN8xZLQw61xlwgDRSXD3YxFCuW2QfXKLM3Wo7axz
38fhWWwL37oti+Q1vNrtVdp+jdJdZUJ8MINP9eYfiG6jtBdIuZZHKiKKM47ciEt0Im
39+85Zmuf1NBECAwEAAaNjMGEwHQYDVR0OBBYEFEoAHZsuuS/MZRHKZHJG37Wl6Whb
40MB8GA1UdIwQYMBaAFHP3QX0LYhTeDmM0H3dc2DzUXywMMA8GA1UdEwEB/wQFMAMB
41Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQBm/er83gbHfaEX
42CnQHxWEM9xZ7AaoqPN7AZwcavjl+P+yTtrb6jn5kQ3U6qfmbloeWjd0IVHZ7GsTl
43sqDkQn4Dh7mfIJUgpu/DDHC4sfr9WSjhM9Wq5e0lQ472e1QUYKhUrv6ht1nNcXp9
44gV0YPZWC4rbhKUCUc4WLK62DEYLn7Qbntj+oiu3cz8O8QVGYVpXrMnarKZEs+2q5
458kICsxRBPaAo+ss7g2+Fvp+3h3VPi0RgjRN5ozfu53cDYFo1VtdDYUm08fnRwhFK
46VMhQ4iW4glL6Luiar7cLpCZ0oMv14liivpk9wIlPYnYIyEb1YnfSihSoYmSSFP+g
47no8lXMls
48-----END CERTIFICATE-----
49-----BEGIN CERTIFICATE-----
50MIIDOjCCAiKgAwIBAgIJAIZjiC92oa9WMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
51BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
52MDU4WhcNMzAwNzEyMTgyMDU4WjAqMSgwJgYDVQQDDB9MaWJyZVNTTCBUZXN0IElu
53dGVybWVkaWF0ZSBDQSAyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
540+CxAlP+TMgqw/UQr4FljNlBbZpw3+mNIfVw/cbUw/trw7thz32chPmidy/RZYq/
552bEDw2TcoFX4PXPgTDo9ABLhQtk6sWTQcb2FIrWmob9gy/l4IVhIvaW7AUIUGT88
56uqTpjY9t5Nyrw2wF3a2wTO/q59Zm6lcRw/7GhkPDAb+MR+61L+h1uZqa4a8HDey+
5708b/6d41bitOwT/8Wd+t/CoRRJjTLMWPgq+Sbqp2YtciMBtnaeMam43wZ/ITvDFh
58kjJmmql2p8PhYWWEYYAs7TOc6VkgBEPZJ9rjp61NNl4kkKNbdYGASx7R+OF7SQHm
59aKAKLOnFK5dnaWDKj08wEQIDAQABo2MwYTAdBgNVHQ4EFgQUkQx49J+YU6c8fvDg
60YBIM9Mxe+KIwHwYDVR0jBBgwFoAUSgAdmy65L8xlEcpkckbftaXpaFswDwYDVR0T
61AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggEBAHQz
62swldhgTD8qOsISMT2yc3IXT+XMrUduqOzTkkFr5R4FjJb5z/aSHoq4ZghqeeAzCq
63vnT9rFWsXNzc/CmaaRqycxKX31iElg1c5P2FuJ/zaH0d4bg7Df8wdNJ4XuP8rW00
64lMhIYYQh9O5pDOXjytIasVSpTkaRTanykniVF+f3qswHhWijzsS4XBtUXtf1V03V
65ESrnrWOBzznmHruq3MPXonTEkS/iLjE+IEWjN+XDvpGGrjSP5qckc/dehW3vn/db
66zDFzSyZSaX28eG9mNHHlbPuFvfa+X1e2VOPm0Yuko2A8/BRouokZZ79b/QdU6u63
67uESvDZkx7K274DGamP4=
68-----END CERTIFICATE-----
69-----BEGIN CERTIFICATE-----
70MIIDOjCCAiKgAwIBAgIJAIZjiC92oa9XMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
71BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDIwHhcNMjAwNzE0MTgy
72MDU5WhcNMzAwNzEyMTgyMDU5WjAqMSgwJgYDVQQDDB9MaWJyZVNTTCBUZXN0IElu
73dGVybWVkaWF0ZSBDQSAzMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
74pAOJi6Gfh4Z8rG2Whf5d2fCSHyt2UbTga3wRdlyrqk1SsLDPdwATr9IZrpyzUrhp
75vYX6kPhfaw7F1z+ubQ6qJSyaSXNO6DhoY7ftcnlUP+aL9Uito7shqDAaQeOf5dbJ
76wXGEOkovSVoGozkfk/KK8xL2RbHETG8LuDnK87Gg+Whr5AQc0qK4kFwIP9GjGQtE
77LkT0sWfiBz8h0m9aaBSSb8mWQMGPal6BLxiY5IZnMAmkqy5nfl8AORJD+uQ9IQag
78GH6OK9cS8RggdeBb2hCM74KQdOQc4PMCJpbWYP4gTKpwrDrUtneo75aQHxAD0Djc
79DWFzwseYSz/Wglg6h/LljwIDAQABo2MwYTAdBgNVHQ4EFgQU8ibVYobhXLJ4T/Vz
80a1Zr1ZyUZG0wHwYDVR0jBBgwFoAUkQx49J+YU6c8fvDgYBIM9Mxe+KIwDwYDVR0T
81AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggEBABGZ
82ZpLzrXiR3/V14kJP6R3RxYV6J+y4GqhDsmbDUTAWR9gyC9s94B/MzgZoy60TbsGj
83LAHPjpIKISIofOTRj4UZvvscqAAcexRcLwCIR6lTEd7uRDlTm8yOxDC8X3jSNUpm
84+mgSYaCP+QRjueeFdqa5/babEEeXvMrLkUbKgjnzgK5VB0qH8ySKl54VapVu94VG
85BRU4UYxxWu4T9hNjmJ7wSwv6m5HMuczIZld3EXswmGOqYk2NcLlRBUl4k2Osi2zI
86/Cb4s+be/6kXljcu32OaJH+7+iqyc2t/uGP+Iy1a4HSgt3oItPtFgbUV/2OeOTYq
87m1QPAxxBsWdlf2FeODQ=
88-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/3e/roots.pem b/src/regress/lib/libcrypto/certs/3e/roots.pem
new file mode 100644
index 0000000000..828d23f7d0
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/3e/roots.pem
@@ -0,0 +1,21 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJALAeB6nSEgWjMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjA1OFoXDTMw
6MDcxMjE4MjA1OFowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCrvqKasvWd4uAIIlUFs3UR
86a/T6QMtxmM+RCrYQRoTHzFwcWU/Zo4UqSOG2ejhdepYhthfYfaststcLnHEXv34
96Lu3mrOnaYT1vHGaianTo9Hvwvlp4RzpY+PVKVbi+5q3Jb2J6V8vnSe9RXVygxs0
10Zde3Fe5Zh5DkH42hh5i60pgoqsG9dUb3V/Q9qi+7HcUweUtKwDbGczr6Q+Wxot2B
11AgqI5zuUINi8U/2r+WypzNwetmFRsTGWMvpWQVYyHuc1LByuWqlzG/19g/yxC5Pj
120Udi/fbiRwSIKt4cyihJG3GoAkSTUdIrVifNi3+MEhnWweGb8IsC5hDeUjq5OK1N
13AgMBAAGjYzBhMB0GA1UdDgQWBBRz90F9C2IU3g5jNB93XNg81F8sDDAfBgNVHSME
14GDAWgBRz90F9C2IU3g5jNB93XNg81F8sDDAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAd3Cip+WwvVckQiGZHb2sFudL
16ctQoIwgV6J9jkxdQ+KKUU1TA4HCA7nnvmYqXIS8GGV6YJ4mfhusXHfMnJG4Tl08Q
17uigsPaBgUibQJx6e+soJOmz3eE8BYRC8/Z/xrXmW2q8/vAz1LUeeRs6hpX2Ae6q1
18R7r0h9t3XwWQVix+huE/bERILv+Z0NsYF1sw5aeKfW2TDx4NudApxUf4vgDkOvLq
19I76FQtpPWg04ZtUYTQEKJ/HsXWHrpfKIcLYd8OmBt133N70di8k2m7z+ATO4XPde
206nwq6EHv3vmolG/kUI3K2AG9yRpG1ZGFyxBF0je2zIN/rHQZ0FXEZfRi+ee9pw==
21-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/4a/bundle.pem b/src/regress/lib/libcrypto/certs/4a/bundle.pem
new file mode 100644
index 0000000000..47d862e4bf
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/4a/bundle.pem
@@ -0,0 +1,66 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 1
3subject= CN = LibreSSL Test Intermediate CA 1
4issuer= CN = LibreSSL Test Root CA 1
5subject= CN = LibreSSL Test Intermediate CA 1
6issuer= CN = LibreSSL Test Root CA 2
7-----BEGIN CERTIFICATE-----
8MIIDLjCCAhagAwIBAgIJAIZjiC92oa9bMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
9BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
10MTAxWhcNMzAwNzEyMTgyMTAxWjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
11cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA6wUWDBLUw4Ad
127Ylnp+LMKBxjm3FN37Y3cpvRrNequ/yyhzIlc6CDY0GbcHOvTeRK7WzqTaIX3Izt
13pJrd8AkxrCdaUc4Ck4DHfhVzBcXqipSr+MunDPHtJUOhTIzyUhTSCo4zw3ebUtED
14+WOkTJP1gkQF6bWItqHKOlSB0TKXKOj8vzAGGBFbkNKgf7+cwCBTW87qJrBfFsl3
154IEGRhwUDz9KRt8UuZqmJcQdgDQVEOVdmCR/1eLc67WJL3F60H0Mr87BymZgiCHn
16gGxQVxHOVlu0iSwuzqHzgvjZNTwLrUJcwbnhwWqIqQz6bsNL/QO8BVgNqz0kWXS0
17W3H0g1ILrwIDAQABo2AwXjAdBgNVHQ4EFgQUzfu1QQA4qamnsFBVaOV6qtHY1V4w
18HwYDVR0jBBgwFoAUgTTFUGyKjRAUaMWl3Hi/8I1hF3swDAYDVR0TAQH/BAIwADAO
19BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAI+tmW84VI31ll4TpT2Y
20/eGHJkLY8+Qt4ArcrVL3pIXhgoogIV39ETZbnZrYzdGik49QZtICDNP7BzLz27RB
21yIBxB69KoF1VYaCnFFzeEDmfeQnmOUxD9L3uYceEU/jjytl3Ae9XXYaux/zRl1r7
22X77QY6bhI5JBjZaS/5CIsXUMTuPySuOuiosf+6fmIETGl3fiqsd9P6Ae/ed38SP2
23nsIIKGfw3KO2C0lIn5NJGC79TcDHbvuYudafAj1RgLBVY1u8mS7pjU/s3f46WUpD
24Nfn77695ShHNrOXerP7KpM1U6LfxBjEBjDft06oX1sftOmn+BCcLyyvrxpZqsZO5
25RZc=
26-----END CERTIFICATE-----
27-----BEGIN CERTIFICATE-----
28MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9ZMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
29BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwMVoXDTMw
30MDcxMjE4MjEwMVowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
31dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM2NdVmEslHo
32/uok5V2/PSwzRCN7T3UiVS7M0LJjzg9WqA9hh8ON4ftWTRm8m1qOcXQ6j8MkpmiM
3395lBBo3TPyt/wXRvA+87yhBbiCxhez2mbpKHz3kaKKo0NYeUsAjrYTyt3rng2OHT
34CEYsbkDs1piWPy9oRLxpsLkhUp3ci7sH4/cR7X9sxFGuei08THR7LzmXniuiFwWZ
356QRfTwVHYiPO69QyZ9QGVghnvN6/rQ8zCpjhJbiRHlbLjUyCry6HP5QKYz1dnNQN
36IeTAoNDFOZYeRo1tpxlOCVNn9Tcv4glf2VvhvQnpegzy7zYqzxH0qby0Rv2T2Gj8
37SXBAGd9U818CAwEAAaNjMGEwHQYDVR0OBBYEFIE0xVBsio0QFGjFpdx4v/CNYRd7
38MB8GA1UdIwQYMBaAFBVzTCyFk7rrBYzCtH5Kh64jw3fCMA8GA1UdEwEB/wQFMAMB
39Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQCrhYxMCi96e3e1
40c2f2TjehW5uyANwU+uX07wuxw31S+JJe+kU7E4tKF2haBVh0bxFvbGVSZB3llYj3
41IUqKxbweKdpqqUOEwi6DvphozjImuZauql8YCEZ7ne/rwrqNJy+YE2O0nMJT7Q1C
42mzpUKSPAOqQ+FFKD3MwfvqsFmIRXriw4DwMsV23DXFEKNtEFCjU2KAGmr6kaLWTn
43LqZTIcKio9YTbpajNZYhDt7dKfdoQJwFYT4REN91JJCU2+QthKVAmCR8r0wkRTj9
44LGTwoLIJdHY/66ddrvRU5QbuWquCzWm87tHwB8NPrKacDarVDROpgVaod63dasol
45EFFbSNzF
46-----END CERTIFICATE-----
47-----BEGIN CERTIFICATE-----
48MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9aMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
49BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwMVoXDTMw
50MDcxMjE4MjEwMVowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
51dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM2NdVmEslHo
52/uok5V2/PSwzRCN7T3UiVS7M0LJjzg9WqA9hh8ON4ftWTRm8m1qOcXQ6j8MkpmiM
5395lBBo3TPyt/wXRvA+87yhBbiCxhez2mbpKHz3kaKKo0NYeUsAjrYTyt3rng2OHT
54CEYsbkDs1piWPy9oRLxpsLkhUp3ci7sH4/cR7X9sxFGuei08THR7LzmXniuiFwWZ
556QRfTwVHYiPO69QyZ9QGVghnvN6/rQ8zCpjhJbiRHlbLjUyCry6HP5QKYz1dnNQN
56IeTAoNDFOZYeRo1tpxlOCVNn9Tcv4glf2VvhvQnpegzy7zYqzxH0qby0Rv2T2Gj8
57SXBAGd9U818CAwEAAaNjMGEwHQYDVR0OBBYEFIE0xVBsio0QFGjFpdx4v/CNYRd7
58MB8GA1UdIwQYMBaAFHhb2pNLnd8Q9ozYpkhm2zjz0FudMA8GA1UdEwEB/wQFMAMB
59Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQADG+KAMsIT89Xb
60LkRAvIph/hYIffGh2s0GhInWcey2oi8VOEEcSmfCDlJ1/RDIB0Ue2c5l1DwlkCRy
610MeYH6YsuS9VVWPc78edfVvKKZKTyRzhBbkgWbOdfc1HeFBTCrKyTal2BMyITJMe
626zn/TMdeH81O21/TA9TfRbaYVjd2jpYyp4TnXVg86tPwFH39wxZazjJlhr0rhIS/
63+TDvkwxC6SZ+jbxTb3d2STcQ40o1HtUb/DNbFaSSoe/TFSGdP6RCngO1r5Ilorr5
64N/8epx3c8080qkyqZBJxeQQFRpeKC0kEpEfOzntxVXIT9tJfHg3R6hJL7XXbbhs2
65dbfGH8Tc
66-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/4a/roots.pem b/src/regress/lib/libcrypto/certs/4a/roots.pem
new file mode 100644
index 0000000000..a811d4aa27
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/4a/roots.pem
@@ -0,0 +1,42 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJAOeFXR6ZNJsnMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwMFoXDTMw
6MDcxMjE4MjEwMFowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC7YMiXwUjnu/lzkmvLI+1K
8++tO9dNoMI6zObcoEke+aWC6A/4idf1NCl5JyAw7t4WDl3th+PhgB3drOQasfgh3
9ns8VaT62kkIV8yf9PFMC2Ul1rfkh+AA5oNCShykz2253eT2S7ZnwfuvizJfw2oUj
10H8x4hL6IP8S7dwLbng5Y7JhZS8pgJQwXRgKzNa+TwIt9Q7MJ1oVaA789WI4iFTtH
11A9fzJMPHM+9MahGmQWSgs+juLqJuAguj38Xi2ilE1mTwQpgCZAqK8DKa+H7ewQiz
12TeEkCk74gjqd2/4Deb/D4yoeXNL6XHBGYIWQz0wZsGePClnR8WN8It8yh2x59NnD
13AgMBAAGjYzBhMB0GA1UdDgQWBBQVc0wshZO66wWMwrR+SoeuI8N3wjAfBgNVHSME
14GDAWgBQVc0wshZO66wWMwrR+SoeuI8N3wjAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAHxtkBAKV+gRpip5hMFI39txw
16bsMnFP7YWptKEwXwE3cAbNMcIANkHafdoLei4EMZkjyyhvxuhSdqxI4FAim6k2/n
171NUGE4oNq5e5Vuuz7iyNLDi+rb4LcOUjeNfEeJ7aWq65PvroHlpSvrs2Z8Z0kQVj
18uVX5pgN48C9OX90dPipZVNgwvSTmgzyDy3GBPtGcYpH/huE3SJWmba9TuB59m3p9
1919tHJB/GlzgnqngJKrgqVS24YNtT8ljBdmzXeRWBFDgXTOnW1rNDRN2GYBnva3KV
20RfiZtXC8vOU9zSAdqSSb6fSReVBi7vUB1gNVf1YAHUwapetiHyQDA4G0b0itvA==
21-----END CERTIFICATE-----
22subject= CN = LibreSSL Test Root CA 2
23issuer= CN = LibreSSL Test Root CA 2
24-----BEGIN CERTIFICATE-----
25MIIDKjCCAhKgAwIBAgIJANlmX7YwAkovMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
26BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwMVoXDTMw
27MDcxMjE4MjEwMVowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDIw
28ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDosjhzyRPC7r0/zj3ylmN/
29SZE39xh9swU7ZCl7aqIA7pYp5qvzOboXR9WMks3jmYkSf+IEg7yzb9L/zOiaFL3v
30wqn0SzSgpnzxSqb6mhnHddZtUJj4Ik+M7JEhdJRfZsIEi3jE4vAMPGkkkM+Ctp37
31Avnu4CjCjSdxp9dkoC1rasAHPJ/Et1UdgngWlvMvVGmc3NWAM6DBjCjufeksq5Od
32FXEKhdNStEoFVXV98MfGryHxCz4u2iI67DGAcevhjKmSKz6a88n1YSMRTO/gJoYy
33JZgS+2mqCVHdi6S28HOBPCdOqwAqFEbj5vpqncf50YSayZjUT7eQ67NHL4n7sYOz
34AgMBAAGjYzBhMB0GA1UdDgQWBBR4W9qTS53fEPaM2KZIZts489BbnTAfBgNVHSME
35GDAWgBR4W9qTS53fEPaM2KZIZts489BbnTAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
36DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAbQhW03iBlIVXVT1i9sQ0kY7p
37ieuMsXv7OPZ/UfFnTlBbPP+LGGYl1QedHh8c24Eg9Sz7Q8ThIETihQlJZilXviQh
386ediieu0CDDEzDoVkbLexoaYnyxBO7VibOHQ23hwylgvSPZnajNz00ah8DKLXIKt
391mYYirYZNUYTwkoR033GMjjIyIpgTfWM+x7dKqPEVlZzC7c6NCO1adc7ZPVOlWcZ
40Wmt8df9yNMK0pZc7+nWU7u8iv65VaWkReTvWnPhOOAz06L94CGbIKPqXXyDhddzm
41g8gl40ObA+j+BxPA37yCICafR0iyyZxBF/tcPHXVUDtHBm3aYIDqMQpMOc3Z1A==
42-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/4b/bundle.pem b/src/regress/lib/libcrypto/certs/4b/bundle.pem
new file mode 100644
index 0000000000..47d862e4bf
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/4b/bundle.pem
@@ -0,0 +1,66 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 1
3subject= CN = LibreSSL Test Intermediate CA 1
4issuer= CN = LibreSSL Test Root CA 1
5subject= CN = LibreSSL Test Intermediate CA 1
6issuer= CN = LibreSSL Test Root CA 2
7-----BEGIN CERTIFICATE-----
8MIIDLjCCAhagAwIBAgIJAIZjiC92oa9bMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
9BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
10MTAxWhcNMzAwNzEyMTgyMTAxWjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
11cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA6wUWDBLUw4Ad
127Ylnp+LMKBxjm3FN37Y3cpvRrNequ/yyhzIlc6CDY0GbcHOvTeRK7WzqTaIX3Izt
13pJrd8AkxrCdaUc4Ck4DHfhVzBcXqipSr+MunDPHtJUOhTIzyUhTSCo4zw3ebUtED
14+WOkTJP1gkQF6bWItqHKOlSB0TKXKOj8vzAGGBFbkNKgf7+cwCBTW87qJrBfFsl3
154IEGRhwUDz9KRt8UuZqmJcQdgDQVEOVdmCR/1eLc67WJL3F60H0Mr87BymZgiCHn
16gGxQVxHOVlu0iSwuzqHzgvjZNTwLrUJcwbnhwWqIqQz6bsNL/QO8BVgNqz0kWXS0
17W3H0g1ILrwIDAQABo2AwXjAdBgNVHQ4EFgQUzfu1QQA4qamnsFBVaOV6qtHY1V4w
18HwYDVR0jBBgwFoAUgTTFUGyKjRAUaMWl3Hi/8I1hF3swDAYDVR0TAQH/BAIwADAO
19BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAI+tmW84VI31ll4TpT2Y
20/eGHJkLY8+Qt4ArcrVL3pIXhgoogIV39ETZbnZrYzdGik49QZtICDNP7BzLz27RB
21yIBxB69KoF1VYaCnFFzeEDmfeQnmOUxD9L3uYceEU/jjytl3Ae9XXYaux/zRl1r7
22X77QY6bhI5JBjZaS/5CIsXUMTuPySuOuiosf+6fmIETGl3fiqsd9P6Ae/ed38SP2
23nsIIKGfw3KO2C0lIn5NJGC79TcDHbvuYudafAj1RgLBVY1u8mS7pjU/s3f46WUpD
24Nfn77695ShHNrOXerP7KpM1U6LfxBjEBjDft06oX1sftOmn+BCcLyyvrxpZqsZO5
25RZc=
26-----END CERTIFICATE-----
27-----BEGIN CERTIFICATE-----
28MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9ZMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
29BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwMVoXDTMw
30MDcxMjE4MjEwMVowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
31dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM2NdVmEslHo
32/uok5V2/PSwzRCN7T3UiVS7M0LJjzg9WqA9hh8ON4ftWTRm8m1qOcXQ6j8MkpmiM
3395lBBo3TPyt/wXRvA+87yhBbiCxhez2mbpKHz3kaKKo0NYeUsAjrYTyt3rng2OHT
34CEYsbkDs1piWPy9oRLxpsLkhUp3ci7sH4/cR7X9sxFGuei08THR7LzmXniuiFwWZ
356QRfTwVHYiPO69QyZ9QGVghnvN6/rQ8zCpjhJbiRHlbLjUyCry6HP5QKYz1dnNQN
36IeTAoNDFOZYeRo1tpxlOCVNn9Tcv4glf2VvhvQnpegzy7zYqzxH0qby0Rv2T2Gj8
37SXBAGd9U818CAwEAAaNjMGEwHQYDVR0OBBYEFIE0xVBsio0QFGjFpdx4v/CNYRd7
38MB8GA1UdIwQYMBaAFBVzTCyFk7rrBYzCtH5Kh64jw3fCMA8GA1UdEwEB/wQFMAMB
39Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQCrhYxMCi96e3e1
40c2f2TjehW5uyANwU+uX07wuxw31S+JJe+kU7E4tKF2haBVh0bxFvbGVSZB3llYj3
41IUqKxbweKdpqqUOEwi6DvphozjImuZauql8YCEZ7ne/rwrqNJy+YE2O0nMJT7Q1C
42mzpUKSPAOqQ+FFKD3MwfvqsFmIRXriw4DwMsV23DXFEKNtEFCjU2KAGmr6kaLWTn
43LqZTIcKio9YTbpajNZYhDt7dKfdoQJwFYT4REN91JJCU2+QthKVAmCR8r0wkRTj9
44LGTwoLIJdHY/66ddrvRU5QbuWquCzWm87tHwB8NPrKacDarVDROpgVaod63dasol
45EFFbSNzF
46-----END CERTIFICATE-----
47-----BEGIN CERTIFICATE-----
48MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9aMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
49BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwMVoXDTMw
50MDcxMjE4MjEwMVowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
51dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM2NdVmEslHo
52/uok5V2/PSwzRCN7T3UiVS7M0LJjzg9WqA9hh8ON4ftWTRm8m1qOcXQ6j8MkpmiM
5395lBBo3TPyt/wXRvA+87yhBbiCxhez2mbpKHz3kaKKo0NYeUsAjrYTyt3rng2OHT
54CEYsbkDs1piWPy9oRLxpsLkhUp3ci7sH4/cR7X9sxFGuei08THR7LzmXniuiFwWZ
556QRfTwVHYiPO69QyZ9QGVghnvN6/rQ8zCpjhJbiRHlbLjUyCry6HP5QKYz1dnNQN
56IeTAoNDFOZYeRo1tpxlOCVNn9Tcv4glf2VvhvQnpegzy7zYqzxH0qby0Rv2T2Gj8
57SXBAGd9U818CAwEAAaNjMGEwHQYDVR0OBBYEFIE0xVBsio0QFGjFpdx4v/CNYRd7
58MB8GA1UdIwQYMBaAFHhb2pNLnd8Q9ozYpkhm2zjz0FudMA8GA1UdEwEB/wQFMAMB
59Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQADG+KAMsIT89Xb
60LkRAvIph/hYIffGh2s0GhInWcey2oi8VOEEcSmfCDlJ1/RDIB0Ue2c5l1DwlkCRy
610MeYH6YsuS9VVWPc78edfVvKKZKTyRzhBbkgWbOdfc1HeFBTCrKyTal2BMyITJMe
626zn/TMdeH81O21/TA9TfRbaYVjd2jpYyp4TnXVg86tPwFH39wxZazjJlhr0rhIS/
63+TDvkwxC6SZ+jbxTb3d2STcQ40o1HtUb/DNbFaSSoe/TFSGdP6RCngO1r5Ilorr5
64N/8epx3c8080qkyqZBJxeQQFRpeKC0kEpEfOzntxVXIT9tJfHg3R6hJL7XXbbhs2
65dbfGH8Tc
66-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/4b/roots.pem b/src/regress/lib/libcrypto/certs/4b/roots.pem
new file mode 100644
index 0000000000..c80efe56b1
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/4b/roots.pem
@@ -0,0 +1,21 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJAOeFXR6ZNJsnMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwMFoXDTMw
6MDcxMjE4MjEwMFowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC7YMiXwUjnu/lzkmvLI+1K
8++tO9dNoMI6zObcoEke+aWC6A/4idf1NCl5JyAw7t4WDl3th+PhgB3drOQasfgh3
9ns8VaT62kkIV8yf9PFMC2Ul1rfkh+AA5oNCShykz2253eT2S7ZnwfuvizJfw2oUj
10H8x4hL6IP8S7dwLbng5Y7JhZS8pgJQwXRgKzNa+TwIt9Q7MJ1oVaA789WI4iFTtH
11A9fzJMPHM+9MahGmQWSgs+juLqJuAguj38Xi2ilE1mTwQpgCZAqK8DKa+H7ewQiz
12TeEkCk74gjqd2/4Deb/D4yoeXNL6XHBGYIWQz0wZsGePClnR8WN8It8yh2x59NnD
13AgMBAAGjYzBhMB0GA1UdDgQWBBQVc0wshZO66wWMwrR+SoeuI8N3wjAfBgNVHSME
14GDAWgBQVc0wshZO66wWMwrR+SoeuI8N3wjAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAHxtkBAKV+gRpip5hMFI39txw
16bsMnFP7YWptKEwXwE3cAbNMcIANkHafdoLei4EMZkjyyhvxuhSdqxI4FAim6k2/n
171NUGE4oNq5e5Vuuz7iyNLDi+rb4LcOUjeNfEeJ7aWq65PvroHlpSvrs2Z8Z0kQVj
18uVX5pgN48C9OX90dPipZVNgwvSTmgzyDy3GBPtGcYpH/huE3SJWmba9TuB59m3p9
1919tHJB/GlzgnqngJKrgqVS24YNtT8ljBdmzXeRWBFDgXTOnW1rNDRN2GYBnva3KV
20RfiZtXC8vOU9zSAdqSSb6fSReVBi7vUB1gNVf1YAHUwapetiHyQDA4G0b0itvA==
21-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/4c/bundle.pem b/src/regress/lib/libcrypto/certs/4c/bundle.pem
new file mode 100644
index 0000000000..47d862e4bf
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/4c/bundle.pem
@@ -0,0 +1,66 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 1
3subject= CN = LibreSSL Test Intermediate CA 1
4issuer= CN = LibreSSL Test Root CA 1
5subject= CN = LibreSSL Test Intermediate CA 1
6issuer= CN = LibreSSL Test Root CA 2
7-----BEGIN CERTIFICATE-----
8MIIDLjCCAhagAwIBAgIJAIZjiC92oa9bMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
9BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
10MTAxWhcNMzAwNzEyMTgyMTAxWjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
11cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA6wUWDBLUw4Ad
127Ylnp+LMKBxjm3FN37Y3cpvRrNequ/yyhzIlc6CDY0GbcHOvTeRK7WzqTaIX3Izt
13pJrd8AkxrCdaUc4Ck4DHfhVzBcXqipSr+MunDPHtJUOhTIzyUhTSCo4zw3ebUtED
14+WOkTJP1gkQF6bWItqHKOlSB0TKXKOj8vzAGGBFbkNKgf7+cwCBTW87qJrBfFsl3
154IEGRhwUDz9KRt8UuZqmJcQdgDQVEOVdmCR/1eLc67WJL3F60H0Mr87BymZgiCHn
16gGxQVxHOVlu0iSwuzqHzgvjZNTwLrUJcwbnhwWqIqQz6bsNL/QO8BVgNqz0kWXS0
17W3H0g1ILrwIDAQABo2AwXjAdBgNVHQ4EFgQUzfu1QQA4qamnsFBVaOV6qtHY1V4w
18HwYDVR0jBBgwFoAUgTTFUGyKjRAUaMWl3Hi/8I1hF3swDAYDVR0TAQH/BAIwADAO
19BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAI+tmW84VI31ll4TpT2Y
20/eGHJkLY8+Qt4ArcrVL3pIXhgoogIV39ETZbnZrYzdGik49QZtICDNP7BzLz27RB
21yIBxB69KoF1VYaCnFFzeEDmfeQnmOUxD9L3uYceEU/jjytl3Ae9XXYaux/zRl1r7
22X77QY6bhI5JBjZaS/5CIsXUMTuPySuOuiosf+6fmIETGl3fiqsd9P6Ae/ed38SP2
23nsIIKGfw3KO2C0lIn5NJGC79TcDHbvuYudafAj1RgLBVY1u8mS7pjU/s3f46WUpD
24Nfn77695ShHNrOXerP7KpM1U6LfxBjEBjDft06oX1sftOmn+BCcLyyvrxpZqsZO5
25RZc=
26-----END CERTIFICATE-----
27-----BEGIN CERTIFICATE-----
28MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9ZMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
29BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwMVoXDTMw
30MDcxMjE4MjEwMVowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
31dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM2NdVmEslHo
32/uok5V2/PSwzRCN7T3UiVS7M0LJjzg9WqA9hh8ON4ftWTRm8m1qOcXQ6j8MkpmiM
3395lBBo3TPyt/wXRvA+87yhBbiCxhez2mbpKHz3kaKKo0NYeUsAjrYTyt3rng2OHT
34CEYsbkDs1piWPy9oRLxpsLkhUp3ci7sH4/cR7X9sxFGuei08THR7LzmXniuiFwWZ
356QRfTwVHYiPO69QyZ9QGVghnvN6/rQ8zCpjhJbiRHlbLjUyCry6HP5QKYz1dnNQN
36IeTAoNDFOZYeRo1tpxlOCVNn9Tcv4glf2VvhvQnpegzy7zYqzxH0qby0Rv2T2Gj8
37SXBAGd9U818CAwEAAaNjMGEwHQYDVR0OBBYEFIE0xVBsio0QFGjFpdx4v/CNYRd7
38MB8GA1UdIwQYMBaAFBVzTCyFk7rrBYzCtH5Kh64jw3fCMA8GA1UdEwEB/wQFMAMB
39Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQCrhYxMCi96e3e1
40c2f2TjehW5uyANwU+uX07wuxw31S+JJe+kU7E4tKF2haBVh0bxFvbGVSZB3llYj3
41IUqKxbweKdpqqUOEwi6DvphozjImuZauql8YCEZ7ne/rwrqNJy+YE2O0nMJT7Q1C
42mzpUKSPAOqQ+FFKD3MwfvqsFmIRXriw4DwMsV23DXFEKNtEFCjU2KAGmr6kaLWTn
43LqZTIcKio9YTbpajNZYhDt7dKfdoQJwFYT4REN91JJCU2+QthKVAmCR8r0wkRTj9
44LGTwoLIJdHY/66ddrvRU5QbuWquCzWm87tHwB8NPrKacDarVDROpgVaod63dasol
45EFFbSNzF
46-----END CERTIFICATE-----
47-----BEGIN CERTIFICATE-----
48MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9aMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
49BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwMVoXDTMw
50MDcxMjE4MjEwMVowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
51dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM2NdVmEslHo
52/uok5V2/PSwzRCN7T3UiVS7M0LJjzg9WqA9hh8ON4ftWTRm8m1qOcXQ6j8MkpmiM
5395lBBo3TPyt/wXRvA+87yhBbiCxhez2mbpKHz3kaKKo0NYeUsAjrYTyt3rng2OHT
54CEYsbkDs1piWPy9oRLxpsLkhUp3ci7sH4/cR7X9sxFGuei08THR7LzmXniuiFwWZ
556QRfTwVHYiPO69QyZ9QGVghnvN6/rQ8zCpjhJbiRHlbLjUyCry6HP5QKYz1dnNQN
56IeTAoNDFOZYeRo1tpxlOCVNn9Tcv4glf2VvhvQnpegzy7zYqzxH0qby0Rv2T2Gj8
57SXBAGd9U818CAwEAAaNjMGEwHQYDVR0OBBYEFIE0xVBsio0QFGjFpdx4v/CNYRd7
58MB8GA1UdIwQYMBaAFHhb2pNLnd8Q9ozYpkhm2zjz0FudMA8GA1UdEwEB/wQFMAMB
59Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQADG+KAMsIT89Xb
60LkRAvIph/hYIffGh2s0GhInWcey2oi8VOEEcSmfCDlJ1/RDIB0Ue2c5l1DwlkCRy
610MeYH6YsuS9VVWPc78edfVvKKZKTyRzhBbkgWbOdfc1HeFBTCrKyTal2BMyITJMe
626zn/TMdeH81O21/TA9TfRbaYVjd2jpYyp4TnXVg86tPwFH39wxZazjJlhr0rhIS/
63+TDvkwxC6SZ+jbxTb3d2STcQ40o1HtUb/DNbFaSSoe/TFSGdP6RCngO1r5Ilorr5
64N/8epx3c8080qkyqZBJxeQQFRpeKC0kEpEfOzntxVXIT9tJfHg3R6hJL7XXbbhs2
65dbfGH8Tc
66-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/4c/roots.pem b/src/regress/lib/libcrypto/certs/4c/roots.pem
new file mode 100644
index 0000000000..b38638aa09
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/4c/roots.pem
@@ -0,0 +1,21 @@
1subject= CN = LibreSSL Test Root CA 2
2issuer= CN = LibreSSL Test Root CA 2
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJANlmX7YwAkovMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwMVoXDTMw
6MDcxMjE4MjEwMVowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDIw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDosjhzyRPC7r0/zj3ylmN/
8SZE39xh9swU7ZCl7aqIA7pYp5qvzOboXR9WMks3jmYkSf+IEg7yzb9L/zOiaFL3v
9wqn0SzSgpnzxSqb6mhnHddZtUJj4Ik+M7JEhdJRfZsIEi3jE4vAMPGkkkM+Ctp37
10Avnu4CjCjSdxp9dkoC1rasAHPJ/Et1UdgngWlvMvVGmc3NWAM6DBjCjufeksq5Od
11FXEKhdNStEoFVXV98MfGryHxCz4u2iI67DGAcevhjKmSKz6a88n1YSMRTO/gJoYy
12JZgS+2mqCVHdi6S28HOBPCdOqwAqFEbj5vpqncf50YSayZjUT7eQ67NHL4n7sYOz
13AgMBAAGjYzBhMB0GA1UdDgQWBBR4W9qTS53fEPaM2KZIZts489BbnTAfBgNVHSME
14GDAWgBR4W9qTS53fEPaM2KZIZts489BbnTAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAbQhW03iBlIVXVT1i9sQ0kY7p
16ieuMsXv7OPZ/UfFnTlBbPP+LGGYl1QedHh8c24Eg9Sz7Q8ThIETihQlJZilXviQh
176ediieu0CDDEzDoVkbLexoaYnyxBO7VibOHQ23hwylgvSPZnajNz00ah8DKLXIKt
181mYYirYZNUYTwkoR033GMjjIyIpgTfWM+x7dKqPEVlZzC7c6NCO1adc7ZPVOlWcZ
19Wmt8df9yNMK0pZc7+nWU7u8iv65VaWkReTvWnPhOOAz06L94CGbIKPqXXyDhddzm
20g8gl40ObA+j+BxPA37yCICafR0iyyZxBF/tcPHXVUDtHBm3aYIDqMQpMOc3Z1A==
21-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/4d/bundle.pem b/src/regress/lib/libcrypto/certs/4d/bundle.pem
new file mode 100644
index 0000000000..72c0fe0d86
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/4d/bundle.pem
@@ -0,0 +1,44 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 1
3subject= CN = LibreSSL Test Intermediate CA 1
4issuer= CN = LibreSSL Test Root CA 1
5-----BEGIN CERTIFICATE-----
6MIIDLjCCAhagAwIBAgIJAIZjiC92oa9bMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
7BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
8MTAxWhcNMzAwNzEyMTgyMTAxWjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
9cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA6wUWDBLUw4Ad
107Ylnp+LMKBxjm3FN37Y3cpvRrNequ/yyhzIlc6CDY0GbcHOvTeRK7WzqTaIX3Izt
11pJrd8AkxrCdaUc4Ck4DHfhVzBcXqipSr+MunDPHtJUOhTIzyUhTSCo4zw3ebUtED
12+WOkTJP1gkQF6bWItqHKOlSB0TKXKOj8vzAGGBFbkNKgf7+cwCBTW87qJrBfFsl3
134IEGRhwUDz9KRt8UuZqmJcQdgDQVEOVdmCR/1eLc67WJL3F60H0Mr87BymZgiCHn
14gGxQVxHOVlu0iSwuzqHzgvjZNTwLrUJcwbnhwWqIqQz6bsNL/QO8BVgNqz0kWXS0
15W3H0g1ILrwIDAQABo2AwXjAdBgNVHQ4EFgQUzfu1QQA4qamnsFBVaOV6qtHY1V4w
16HwYDVR0jBBgwFoAUgTTFUGyKjRAUaMWl3Hi/8I1hF3swDAYDVR0TAQH/BAIwADAO
17BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAI+tmW84VI31ll4TpT2Y
18/eGHJkLY8+Qt4ArcrVL3pIXhgoogIV39ETZbnZrYzdGik49QZtICDNP7BzLz27RB
19yIBxB69KoF1VYaCnFFzeEDmfeQnmOUxD9L3uYceEU/jjytl3Ae9XXYaux/zRl1r7
20X77QY6bhI5JBjZaS/5CIsXUMTuPySuOuiosf+6fmIETGl3fiqsd9P6Ae/ed38SP2
21nsIIKGfw3KO2C0lIn5NJGC79TcDHbvuYudafAj1RgLBVY1u8mS7pjU/s3f46WUpD
22Nfn77695ShHNrOXerP7KpM1U6LfxBjEBjDft06oX1sftOmn+BCcLyyvrxpZqsZO5
23RZc=
24-----END CERTIFICATE-----
25-----BEGIN CERTIFICATE-----
26MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9ZMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
27BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwMVoXDTMw
28MDcxMjE4MjEwMVowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
29dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM2NdVmEslHo
30/uok5V2/PSwzRCN7T3UiVS7M0LJjzg9WqA9hh8ON4ftWTRm8m1qOcXQ6j8MkpmiM
3195lBBo3TPyt/wXRvA+87yhBbiCxhez2mbpKHz3kaKKo0NYeUsAjrYTyt3rng2OHT
32CEYsbkDs1piWPy9oRLxpsLkhUp3ci7sH4/cR7X9sxFGuei08THR7LzmXniuiFwWZ
336QRfTwVHYiPO69QyZ9QGVghnvN6/rQ8zCpjhJbiRHlbLjUyCry6HP5QKYz1dnNQN
34IeTAoNDFOZYeRo1tpxlOCVNn9Tcv4glf2VvhvQnpegzy7zYqzxH0qby0Rv2T2Gj8
35SXBAGd9U818CAwEAAaNjMGEwHQYDVR0OBBYEFIE0xVBsio0QFGjFpdx4v/CNYRd7
36MB8GA1UdIwQYMBaAFBVzTCyFk7rrBYzCtH5Kh64jw3fCMA8GA1UdEwEB/wQFMAMB
37Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQCrhYxMCi96e3e1
38c2f2TjehW5uyANwU+uX07wuxw31S+JJe+kU7E4tKF2haBVh0bxFvbGVSZB3llYj3
39IUqKxbweKdpqqUOEwi6DvphozjImuZauql8YCEZ7ne/rwrqNJy+YE2O0nMJT7Q1C
40mzpUKSPAOqQ+FFKD3MwfvqsFmIRXriw4DwMsV23DXFEKNtEFCjU2KAGmr6kaLWTn
41LqZTIcKio9YTbpajNZYhDt7dKfdoQJwFYT4REN91JJCU2+QthKVAmCR8r0wkRTj9
42LGTwoLIJdHY/66ddrvRU5QbuWquCzWm87tHwB8NPrKacDarVDROpgVaod63dasol
43EFFbSNzF
44-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/4d/roots.pem b/src/regress/lib/libcrypto/certs/4d/roots.pem
new file mode 100644
index 0000000000..a811d4aa27
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/4d/roots.pem
@@ -0,0 +1,42 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJAOeFXR6ZNJsnMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwMFoXDTMw
6MDcxMjE4MjEwMFowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC7YMiXwUjnu/lzkmvLI+1K
8++tO9dNoMI6zObcoEke+aWC6A/4idf1NCl5JyAw7t4WDl3th+PhgB3drOQasfgh3
9ns8VaT62kkIV8yf9PFMC2Ul1rfkh+AA5oNCShykz2253eT2S7ZnwfuvizJfw2oUj
10H8x4hL6IP8S7dwLbng5Y7JhZS8pgJQwXRgKzNa+TwIt9Q7MJ1oVaA789WI4iFTtH
11A9fzJMPHM+9MahGmQWSgs+juLqJuAguj38Xi2ilE1mTwQpgCZAqK8DKa+H7ewQiz
12TeEkCk74gjqd2/4Deb/D4yoeXNL6XHBGYIWQz0wZsGePClnR8WN8It8yh2x59NnD
13AgMBAAGjYzBhMB0GA1UdDgQWBBQVc0wshZO66wWMwrR+SoeuI8N3wjAfBgNVHSME
14GDAWgBQVc0wshZO66wWMwrR+SoeuI8N3wjAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAHxtkBAKV+gRpip5hMFI39txw
16bsMnFP7YWptKEwXwE3cAbNMcIANkHafdoLei4EMZkjyyhvxuhSdqxI4FAim6k2/n
171NUGE4oNq5e5Vuuz7iyNLDi+rb4LcOUjeNfEeJ7aWq65PvroHlpSvrs2Z8Z0kQVj
18uVX5pgN48C9OX90dPipZVNgwvSTmgzyDy3GBPtGcYpH/huE3SJWmba9TuB59m3p9
1919tHJB/GlzgnqngJKrgqVS24YNtT8ljBdmzXeRWBFDgXTOnW1rNDRN2GYBnva3KV
20RfiZtXC8vOU9zSAdqSSb6fSReVBi7vUB1gNVf1YAHUwapetiHyQDA4G0b0itvA==
21-----END CERTIFICATE-----
22subject= CN = LibreSSL Test Root CA 2
23issuer= CN = LibreSSL Test Root CA 2
24-----BEGIN CERTIFICATE-----
25MIIDKjCCAhKgAwIBAgIJANlmX7YwAkovMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
26BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwMVoXDTMw
27MDcxMjE4MjEwMVowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDIw
28ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDosjhzyRPC7r0/zj3ylmN/
29SZE39xh9swU7ZCl7aqIA7pYp5qvzOboXR9WMks3jmYkSf+IEg7yzb9L/zOiaFL3v
30wqn0SzSgpnzxSqb6mhnHddZtUJj4Ik+M7JEhdJRfZsIEi3jE4vAMPGkkkM+Ctp37
31Avnu4CjCjSdxp9dkoC1rasAHPJ/Et1UdgngWlvMvVGmc3NWAM6DBjCjufeksq5Od
32FXEKhdNStEoFVXV98MfGryHxCz4u2iI67DGAcevhjKmSKz6a88n1YSMRTO/gJoYy
33JZgS+2mqCVHdi6S28HOBPCdOqwAqFEbj5vpqncf50YSayZjUT7eQ67NHL4n7sYOz
34AgMBAAGjYzBhMB0GA1UdDgQWBBR4W9qTS53fEPaM2KZIZts489BbnTAfBgNVHSME
35GDAWgBR4W9qTS53fEPaM2KZIZts489BbnTAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
36DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAbQhW03iBlIVXVT1i9sQ0kY7p
37ieuMsXv7OPZ/UfFnTlBbPP+LGGYl1QedHh8c24Eg9Sz7Q8ThIETihQlJZilXviQh
386ediieu0CDDEzDoVkbLexoaYnyxBO7VibOHQ23hwylgvSPZnajNz00ah8DKLXIKt
391mYYirYZNUYTwkoR033GMjjIyIpgTfWM+x7dKqPEVlZzC7c6NCO1adc7ZPVOlWcZ
40Wmt8df9yNMK0pZc7+nWU7u8iv65VaWkReTvWnPhOOAz06L94CGbIKPqXXyDhddzm
41g8gl40ObA+j+BxPA37yCICafR0iyyZxBF/tcPHXVUDtHBm3aYIDqMQpMOc3Z1A==
42-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/4e/bundle.pem b/src/regress/lib/libcrypto/certs/4e/bundle.pem
new file mode 100644
index 0000000000..b9ad28697b
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/4e/bundle.pem
@@ -0,0 +1,44 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 1
3subject= CN = LibreSSL Test Intermediate CA 1
4issuer= CN = LibreSSL Test Root CA 2
5-----BEGIN CERTIFICATE-----
6MIIDLjCCAhagAwIBAgIJAIZjiC92oa9bMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
7BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
8MTAxWhcNMzAwNzEyMTgyMTAxWjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
9cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA6wUWDBLUw4Ad
107Ylnp+LMKBxjm3FN37Y3cpvRrNequ/yyhzIlc6CDY0GbcHOvTeRK7WzqTaIX3Izt
11pJrd8AkxrCdaUc4Ck4DHfhVzBcXqipSr+MunDPHtJUOhTIzyUhTSCo4zw3ebUtED
12+WOkTJP1gkQF6bWItqHKOlSB0TKXKOj8vzAGGBFbkNKgf7+cwCBTW87qJrBfFsl3
134IEGRhwUDz9KRt8UuZqmJcQdgDQVEOVdmCR/1eLc67WJL3F60H0Mr87BymZgiCHn
14gGxQVxHOVlu0iSwuzqHzgvjZNTwLrUJcwbnhwWqIqQz6bsNL/QO8BVgNqz0kWXS0
15W3H0g1ILrwIDAQABo2AwXjAdBgNVHQ4EFgQUzfu1QQA4qamnsFBVaOV6qtHY1V4w
16HwYDVR0jBBgwFoAUgTTFUGyKjRAUaMWl3Hi/8I1hF3swDAYDVR0TAQH/BAIwADAO
17BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAI+tmW84VI31ll4TpT2Y
18/eGHJkLY8+Qt4ArcrVL3pIXhgoogIV39ETZbnZrYzdGik49QZtICDNP7BzLz27RB
19yIBxB69KoF1VYaCnFFzeEDmfeQnmOUxD9L3uYceEU/jjytl3Ae9XXYaux/zRl1r7
20X77QY6bhI5JBjZaS/5CIsXUMTuPySuOuiosf+6fmIETGl3fiqsd9P6Ae/ed38SP2
21nsIIKGfw3KO2C0lIn5NJGC79TcDHbvuYudafAj1RgLBVY1u8mS7pjU/s3f46WUpD
22Nfn77695ShHNrOXerP7KpM1U6LfxBjEBjDft06oX1sftOmn+BCcLyyvrxpZqsZO5
23RZc=
24-----END CERTIFICATE-----
25-----BEGIN CERTIFICATE-----
26MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9aMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
27BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwMVoXDTMw
28MDcxMjE4MjEwMVowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
29dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM2NdVmEslHo
30/uok5V2/PSwzRCN7T3UiVS7M0LJjzg9WqA9hh8ON4ftWTRm8m1qOcXQ6j8MkpmiM
3195lBBo3TPyt/wXRvA+87yhBbiCxhez2mbpKHz3kaKKo0NYeUsAjrYTyt3rng2OHT
32CEYsbkDs1piWPy9oRLxpsLkhUp3ci7sH4/cR7X9sxFGuei08THR7LzmXniuiFwWZ
336QRfTwVHYiPO69QyZ9QGVghnvN6/rQ8zCpjhJbiRHlbLjUyCry6HP5QKYz1dnNQN
34IeTAoNDFOZYeRo1tpxlOCVNn9Tcv4glf2VvhvQnpegzy7zYqzxH0qby0Rv2T2Gj8
35SXBAGd9U818CAwEAAaNjMGEwHQYDVR0OBBYEFIE0xVBsio0QFGjFpdx4v/CNYRd7
36MB8GA1UdIwQYMBaAFHhb2pNLnd8Q9ozYpkhm2zjz0FudMA8GA1UdEwEB/wQFMAMB
37Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQADG+KAMsIT89Xb
38LkRAvIph/hYIffGh2s0GhInWcey2oi8VOEEcSmfCDlJ1/RDIB0Ue2c5l1DwlkCRy
390MeYH6YsuS9VVWPc78edfVvKKZKTyRzhBbkgWbOdfc1HeFBTCrKyTal2BMyITJMe
406zn/TMdeH81O21/TA9TfRbaYVjd2jpYyp4TnXVg86tPwFH39wxZazjJlhr0rhIS/
41+TDvkwxC6SZ+jbxTb3d2STcQ40o1HtUb/DNbFaSSoe/TFSGdP6RCngO1r5Ilorr5
42N/8epx3c8080qkyqZBJxeQQFRpeKC0kEpEfOzntxVXIT9tJfHg3R6hJL7XXbbhs2
43dbfGH8Tc
44-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/4e/roots.pem b/src/regress/lib/libcrypto/certs/4e/roots.pem
new file mode 100644
index 0000000000..a811d4aa27
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/4e/roots.pem
@@ -0,0 +1,42 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJAOeFXR6ZNJsnMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwMFoXDTMw
6MDcxMjE4MjEwMFowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC7YMiXwUjnu/lzkmvLI+1K
8++tO9dNoMI6zObcoEke+aWC6A/4idf1NCl5JyAw7t4WDl3th+PhgB3drOQasfgh3
9ns8VaT62kkIV8yf9PFMC2Ul1rfkh+AA5oNCShykz2253eT2S7ZnwfuvizJfw2oUj
10H8x4hL6IP8S7dwLbng5Y7JhZS8pgJQwXRgKzNa+TwIt9Q7MJ1oVaA789WI4iFTtH
11A9fzJMPHM+9MahGmQWSgs+juLqJuAguj38Xi2ilE1mTwQpgCZAqK8DKa+H7ewQiz
12TeEkCk74gjqd2/4Deb/D4yoeXNL6XHBGYIWQz0wZsGePClnR8WN8It8yh2x59NnD
13AgMBAAGjYzBhMB0GA1UdDgQWBBQVc0wshZO66wWMwrR+SoeuI8N3wjAfBgNVHSME
14GDAWgBQVc0wshZO66wWMwrR+SoeuI8N3wjAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAHxtkBAKV+gRpip5hMFI39txw
16bsMnFP7YWptKEwXwE3cAbNMcIANkHafdoLei4EMZkjyyhvxuhSdqxI4FAim6k2/n
171NUGE4oNq5e5Vuuz7iyNLDi+rb4LcOUjeNfEeJ7aWq65PvroHlpSvrs2Z8Z0kQVj
18uVX5pgN48C9OX90dPipZVNgwvSTmgzyDy3GBPtGcYpH/huE3SJWmba9TuB59m3p9
1919tHJB/GlzgnqngJKrgqVS24YNtT8ljBdmzXeRWBFDgXTOnW1rNDRN2GYBnva3KV
20RfiZtXC8vOU9zSAdqSSb6fSReVBi7vUB1gNVf1YAHUwapetiHyQDA4G0b0itvA==
21-----END CERTIFICATE-----
22subject= CN = LibreSSL Test Root CA 2
23issuer= CN = LibreSSL Test Root CA 2
24-----BEGIN CERTIFICATE-----
25MIIDKjCCAhKgAwIBAgIJANlmX7YwAkovMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
26BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwMVoXDTMw
27MDcxMjE4MjEwMVowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDIw
28ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDosjhzyRPC7r0/zj3ylmN/
29SZE39xh9swU7ZCl7aqIA7pYp5qvzOboXR9WMks3jmYkSf+IEg7yzb9L/zOiaFL3v
30wqn0SzSgpnzxSqb6mhnHddZtUJj4Ik+M7JEhdJRfZsIEi3jE4vAMPGkkkM+Ctp37
31Avnu4CjCjSdxp9dkoC1rasAHPJ/Et1UdgngWlvMvVGmc3NWAM6DBjCjufeksq5Od
32FXEKhdNStEoFVXV98MfGryHxCz4u2iI67DGAcevhjKmSKz6a88n1YSMRTO/gJoYy
33JZgS+2mqCVHdi6S28HOBPCdOqwAqFEbj5vpqncf50YSayZjUT7eQ67NHL4n7sYOz
34AgMBAAGjYzBhMB0GA1UdDgQWBBR4W9qTS53fEPaM2KZIZts489BbnTAfBgNVHSME
35GDAWgBR4W9qTS53fEPaM2KZIZts489BbnTAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
36DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAbQhW03iBlIVXVT1i9sQ0kY7p
37ieuMsXv7OPZ/UfFnTlBbPP+LGGYl1QedHh8c24Eg9Sz7Q8ThIETihQlJZilXviQh
386ediieu0CDDEzDoVkbLexoaYnyxBO7VibOHQ23hwylgvSPZnajNz00ah8DKLXIKt
391mYYirYZNUYTwkoR033GMjjIyIpgTfWM+x7dKqPEVlZzC7c6NCO1adc7ZPVOlWcZ
40Wmt8df9yNMK0pZc7+nWU7u8iv65VaWkReTvWnPhOOAz06L94CGbIKPqXXyDhddzm
41g8gl40ObA+j+BxPA37yCICafR0iyyZxBF/tcPHXVUDtHBm3aYIDqMQpMOc3Z1A==
42-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/4f/bundle.pem b/src/regress/lib/libcrypto/certs/4f/bundle.pem
new file mode 100644
index 0000000000..f5a79b016b
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/4f/bundle.pem
@@ -0,0 +1,66 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 1
3subject= CN = LibreSSL Test Intermediate CA 1
4issuer= CN = LibreSSL Test Root CA 2
5subject= CN = LibreSSL Test Intermediate CA 1
6issuer= CN = LibreSSL Test Root CA 1
7-----BEGIN CERTIFICATE-----
8MIIDLjCCAhagAwIBAgIJAIZjiC92oa9bMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
9BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
10MTAxWhcNMzAwNzEyMTgyMTAxWjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
11cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA6wUWDBLUw4Ad
127Ylnp+LMKBxjm3FN37Y3cpvRrNequ/yyhzIlc6CDY0GbcHOvTeRK7WzqTaIX3Izt
13pJrd8AkxrCdaUc4Ck4DHfhVzBcXqipSr+MunDPHtJUOhTIzyUhTSCo4zw3ebUtED
14+WOkTJP1gkQF6bWItqHKOlSB0TKXKOj8vzAGGBFbkNKgf7+cwCBTW87qJrBfFsl3
154IEGRhwUDz9KRt8UuZqmJcQdgDQVEOVdmCR/1eLc67WJL3F60H0Mr87BymZgiCHn
16gGxQVxHOVlu0iSwuzqHzgvjZNTwLrUJcwbnhwWqIqQz6bsNL/QO8BVgNqz0kWXS0
17W3H0g1ILrwIDAQABo2AwXjAdBgNVHQ4EFgQUzfu1QQA4qamnsFBVaOV6qtHY1V4w
18HwYDVR0jBBgwFoAUgTTFUGyKjRAUaMWl3Hi/8I1hF3swDAYDVR0TAQH/BAIwADAO
19BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAI+tmW84VI31ll4TpT2Y
20/eGHJkLY8+Qt4ArcrVL3pIXhgoogIV39ETZbnZrYzdGik49QZtICDNP7BzLz27RB
21yIBxB69KoF1VYaCnFFzeEDmfeQnmOUxD9L3uYceEU/jjytl3Ae9XXYaux/zRl1r7
22X77QY6bhI5JBjZaS/5CIsXUMTuPySuOuiosf+6fmIETGl3fiqsd9P6Ae/ed38SP2
23nsIIKGfw3KO2C0lIn5NJGC79TcDHbvuYudafAj1RgLBVY1u8mS7pjU/s3f46WUpD
24Nfn77695ShHNrOXerP7KpM1U6LfxBjEBjDft06oX1sftOmn+BCcLyyvrxpZqsZO5
25RZc=
26-----END CERTIFICATE-----
27-----BEGIN CERTIFICATE-----
28MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9aMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
29BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwMVoXDTMw
30MDcxMjE4MjEwMVowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
31dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM2NdVmEslHo
32/uok5V2/PSwzRCN7T3UiVS7M0LJjzg9WqA9hh8ON4ftWTRm8m1qOcXQ6j8MkpmiM
3395lBBo3TPyt/wXRvA+87yhBbiCxhez2mbpKHz3kaKKo0NYeUsAjrYTyt3rng2OHT
34CEYsbkDs1piWPy9oRLxpsLkhUp3ci7sH4/cR7X9sxFGuei08THR7LzmXniuiFwWZ
356QRfTwVHYiPO69QyZ9QGVghnvN6/rQ8zCpjhJbiRHlbLjUyCry6HP5QKYz1dnNQN
36IeTAoNDFOZYeRo1tpxlOCVNn9Tcv4glf2VvhvQnpegzy7zYqzxH0qby0Rv2T2Gj8
37SXBAGd9U818CAwEAAaNjMGEwHQYDVR0OBBYEFIE0xVBsio0QFGjFpdx4v/CNYRd7
38MB8GA1UdIwQYMBaAFHhb2pNLnd8Q9ozYpkhm2zjz0FudMA8GA1UdEwEB/wQFMAMB
39Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQADG+KAMsIT89Xb
40LkRAvIph/hYIffGh2s0GhInWcey2oi8VOEEcSmfCDlJ1/RDIB0Ue2c5l1DwlkCRy
410MeYH6YsuS9VVWPc78edfVvKKZKTyRzhBbkgWbOdfc1HeFBTCrKyTal2BMyITJMe
426zn/TMdeH81O21/TA9TfRbaYVjd2jpYyp4TnXVg86tPwFH39wxZazjJlhr0rhIS/
43+TDvkwxC6SZ+jbxTb3d2STcQ40o1HtUb/DNbFaSSoe/TFSGdP6RCngO1r5Ilorr5
44N/8epx3c8080qkyqZBJxeQQFRpeKC0kEpEfOzntxVXIT9tJfHg3R6hJL7XXbbhs2
45dbfGH8Tc
46-----END CERTIFICATE-----
47-----BEGIN CERTIFICATE-----
48MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9ZMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
49BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwMVoXDTMw
50MDcxMjE4MjEwMVowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
51dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM2NdVmEslHo
52/uok5V2/PSwzRCN7T3UiVS7M0LJjzg9WqA9hh8ON4ftWTRm8m1qOcXQ6j8MkpmiM
5395lBBo3TPyt/wXRvA+87yhBbiCxhez2mbpKHz3kaKKo0NYeUsAjrYTyt3rng2OHT
54CEYsbkDs1piWPy9oRLxpsLkhUp3ci7sH4/cR7X9sxFGuei08THR7LzmXniuiFwWZ
556QRfTwVHYiPO69QyZ9QGVghnvN6/rQ8zCpjhJbiRHlbLjUyCry6HP5QKYz1dnNQN
56IeTAoNDFOZYeRo1tpxlOCVNn9Tcv4glf2VvhvQnpegzy7zYqzxH0qby0Rv2T2Gj8
57SXBAGd9U818CAwEAAaNjMGEwHQYDVR0OBBYEFIE0xVBsio0QFGjFpdx4v/CNYRd7
58MB8GA1UdIwQYMBaAFBVzTCyFk7rrBYzCtH5Kh64jw3fCMA8GA1UdEwEB/wQFMAMB
59Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQCrhYxMCi96e3e1
60c2f2TjehW5uyANwU+uX07wuxw31S+JJe+kU7E4tKF2haBVh0bxFvbGVSZB3llYj3
61IUqKxbweKdpqqUOEwi6DvphozjImuZauql8YCEZ7ne/rwrqNJy+YE2O0nMJT7Q1C
62mzpUKSPAOqQ+FFKD3MwfvqsFmIRXriw4DwMsV23DXFEKNtEFCjU2KAGmr6kaLWTn
63LqZTIcKio9YTbpajNZYhDt7dKfdoQJwFYT4REN91JJCU2+QthKVAmCR8r0wkRTj9
64LGTwoLIJdHY/66ddrvRU5QbuWquCzWm87tHwB8NPrKacDarVDROpgVaod63dasol
65EFFbSNzF
66-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/4f/roots.pem b/src/regress/lib/libcrypto/certs/4f/roots.pem
new file mode 100644
index 0000000000..a811d4aa27
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/4f/roots.pem
@@ -0,0 +1,42 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJAOeFXR6ZNJsnMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwMFoXDTMw
6MDcxMjE4MjEwMFowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC7YMiXwUjnu/lzkmvLI+1K
8++tO9dNoMI6zObcoEke+aWC6A/4idf1NCl5JyAw7t4WDl3th+PhgB3drOQasfgh3
9ns8VaT62kkIV8yf9PFMC2Ul1rfkh+AA5oNCShykz2253eT2S7ZnwfuvizJfw2oUj
10H8x4hL6IP8S7dwLbng5Y7JhZS8pgJQwXRgKzNa+TwIt9Q7MJ1oVaA789WI4iFTtH
11A9fzJMPHM+9MahGmQWSgs+juLqJuAguj38Xi2ilE1mTwQpgCZAqK8DKa+H7ewQiz
12TeEkCk74gjqd2/4Deb/D4yoeXNL6XHBGYIWQz0wZsGePClnR8WN8It8yh2x59NnD
13AgMBAAGjYzBhMB0GA1UdDgQWBBQVc0wshZO66wWMwrR+SoeuI8N3wjAfBgNVHSME
14GDAWgBQVc0wshZO66wWMwrR+SoeuI8N3wjAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAHxtkBAKV+gRpip5hMFI39txw
16bsMnFP7YWptKEwXwE3cAbNMcIANkHafdoLei4EMZkjyyhvxuhSdqxI4FAim6k2/n
171NUGE4oNq5e5Vuuz7iyNLDi+rb4LcOUjeNfEeJ7aWq65PvroHlpSvrs2Z8Z0kQVj
18uVX5pgN48C9OX90dPipZVNgwvSTmgzyDy3GBPtGcYpH/huE3SJWmba9TuB59m3p9
1919tHJB/GlzgnqngJKrgqVS24YNtT8ljBdmzXeRWBFDgXTOnW1rNDRN2GYBnva3KV
20RfiZtXC8vOU9zSAdqSSb6fSReVBi7vUB1gNVf1YAHUwapetiHyQDA4G0b0itvA==
21-----END CERTIFICATE-----
22subject= CN = LibreSSL Test Root CA 2
23issuer= CN = LibreSSL Test Root CA 2
24-----BEGIN CERTIFICATE-----
25MIIDKjCCAhKgAwIBAgIJANlmX7YwAkovMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
26BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwMVoXDTMw
27MDcxMjE4MjEwMVowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDIw
28ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDosjhzyRPC7r0/zj3ylmN/
29SZE39xh9swU7ZCl7aqIA7pYp5qvzOboXR9WMks3jmYkSf+IEg7yzb9L/zOiaFL3v
30wqn0SzSgpnzxSqb6mhnHddZtUJj4Ik+M7JEhdJRfZsIEi3jE4vAMPGkkkM+Ctp37
31Avnu4CjCjSdxp9dkoC1rasAHPJ/Et1UdgngWlvMvVGmc3NWAM6DBjCjufeksq5Od
32FXEKhdNStEoFVXV98MfGryHxCz4u2iI67DGAcevhjKmSKz6a88n1YSMRTO/gJoYy
33JZgS+2mqCVHdi6S28HOBPCdOqwAqFEbj5vpqncf50YSayZjUT7eQ67NHL4n7sYOz
34AgMBAAGjYzBhMB0GA1UdDgQWBBR4W9qTS53fEPaM2KZIZts489BbnTAfBgNVHSME
35GDAWgBR4W9qTS53fEPaM2KZIZts489BbnTAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
36DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAbQhW03iBlIVXVT1i9sQ0kY7p
37ieuMsXv7OPZ/UfFnTlBbPP+LGGYl1QedHh8c24Eg9Sz7Q8ThIETihQlJZilXviQh
386ediieu0CDDEzDoVkbLexoaYnyxBO7VibOHQ23hwylgvSPZnajNz00ah8DKLXIKt
391mYYirYZNUYTwkoR033GMjjIyIpgTfWM+x7dKqPEVlZzC7c6NCO1adc7ZPVOlWcZ
40Wmt8df9yNMK0pZc7+nWU7u8iv65VaWkReTvWnPhOOAz06L94CGbIKPqXXyDhddzm
41g8gl40ObA+j+BxPA37yCICafR0iyyZxBF/tcPHXVUDtHBm3aYIDqMQpMOc3Z1A==
42-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/4g/bundle.pem b/src/regress/lib/libcrypto/certs/4g/bundle.pem
new file mode 100644
index 0000000000..f5a79b016b
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/4g/bundle.pem
@@ -0,0 +1,66 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 1
3subject= CN = LibreSSL Test Intermediate CA 1
4issuer= CN = LibreSSL Test Root CA 2
5subject= CN = LibreSSL Test Intermediate CA 1
6issuer= CN = LibreSSL Test Root CA 1
7-----BEGIN CERTIFICATE-----
8MIIDLjCCAhagAwIBAgIJAIZjiC92oa9bMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
9BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
10MTAxWhcNMzAwNzEyMTgyMTAxWjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
11cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA6wUWDBLUw4Ad
127Ylnp+LMKBxjm3FN37Y3cpvRrNequ/yyhzIlc6CDY0GbcHOvTeRK7WzqTaIX3Izt
13pJrd8AkxrCdaUc4Ck4DHfhVzBcXqipSr+MunDPHtJUOhTIzyUhTSCo4zw3ebUtED
14+WOkTJP1gkQF6bWItqHKOlSB0TKXKOj8vzAGGBFbkNKgf7+cwCBTW87qJrBfFsl3
154IEGRhwUDz9KRt8UuZqmJcQdgDQVEOVdmCR/1eLc67WJL3F60H0Mr87BymZgiCHn
16gGxQVxHOVlu0iSwuzqHzgvjZNTwLrUJcwbnhwWqIqQz6bsNL/QO8BVgNqz0kWXS0
17W3H0g1ILrwIDAQABo2AwXjAdBgNVHQ4EFgQUzfu1QQA4qamnsFBVaOV6qtHY1V4w
18HwYDVR0jBBgwFoAUgTTFUGyKjRAUaMWl3Hi/8I1hF3swDAYDVR0TAQH/BAIwADAO
19BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAI+tmW84VI31ll4TpT2Y
20/eGHJkLY8+Qt4ArcrVL3pIXhgoogIV39ETZbnZrYzdGik49QZtICDNP7BzLz27RB
21yIBxB69KoF1VYaCnFFzeEDmfeQnmOUxD9L3uYceEU/jjytl3Ae9XXYaux/zRl1r7
22X77QY6bhI5JBjZaS/5CIsXUMTuPySuOuiosf+6fmIETGl3fiqsd9P6Ae/ed38SP2
23nsIIKGfw3KO2C0lIn5NJGC79TcDHbvuYudafAj1RgLBVY1u8mS7pjU/s3f46WUpD
24Nfn77695ShHNrOXerP7KpM1U6LfxBjEBjDft06oX1sftOmn+BCcLyyvrxpZqsZO5
25RZc=
26-----END CERTIFICATE-----
27-----BEGIN CERTIFICATE-----
28MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9aMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
29BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwMVoXDTMw
30MDcxMjE4MjEwMVowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
31dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM2NdVmEslHo
32/uok5V2/PSwzRCN7T3UiVS7M0LJjzg9WqA9hh8ON4ftWTRm8m1qOcXQ6j8MkpmiM
3395lBBo3TPyt/wXRvA+87yhBbiCxhez2mbpKHz3kaKKo0NYeUsAjrYTyt3rng2OHT
34CEYsbkDs1piWPy9oRLxpsLkhUp3ci7sH4/cR7X9sxFGuei08THR7LzmXniuiFwWZ
356QRfTwVHYiPO69QyZ9QGVghnvN6/rQ8zCpjhJbiRHlbLjUyCry6HP5QKYz1dnNQN
36IeTAoNDFOZYeRo1tpxlOCVNn9Tcv4glf2VvhvQnpegzy7zYqzxH0qby0Rv2T2Gj8
37SXBAGd9U818CAwEAAaNjMGEwHQYDVR0OBBYEFIE0xVBsio0QFGjFpdx4v/CNYRd7
38MB8GA1UdIwQYMBaAFHhb2pNLnd8Q9ozYpkhm2zjz0FudMA8GA1UdEwEB/wQFMAMB
39Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQADG+KAMsIT89Xb
40LkRAvIph/hYIffGh2s0GhInWcey2oi8VOEEcSmfCDlJ1/RDIB0Ue2c5l1DwlkCRy
410MeYH6YsuS9VVWPc78edfVvKKZKTyRzhBbkgWbOdfc1HeFBTCrKyTal2BMyITJMe
426zn/TMdeH81O21/TA9TfRbaYVjd2jpYyp4TnXVg86tPwFH39wxZazjJlhr0rhIS/
43+TDvkwxC6SZ+jbxTb3d2STcQ40o1HtUb/DNbFaSSoe/TFSGdP6RCngO1r5Ilorr5
44N/8epx3c8080qkyqZBJxeQQFRpeKC0kEpEfOzntxVXIT9tJfHg3R6hJL7XXbbhs2
45dbfGH8Tc
46-----END CERTIFICATE-----
47-----BEGIN CERTIFICATE-----
48MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9ZMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
49BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwMVoXDTMw
50MDcxMjE4MjEwMVowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
51dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM2NdVmEslHo
52/uok5V2/PSwzRCN7T3UiVS7M0LJjzg9WqA9hh8ON4ftWTRm8m1qOcXQ6j8MkpmiM
5395lBBo3TPyt/wXRvA+87yhBbiCxhez2mbpKHz3kaKKo0NYeUsAjrYTyt3rng2OHT
54CEYsbkDs1piWPy9oRLxpsLkhUp3ci7sH4/cR7X9sxFGuei08THR7LzmXniuiFwWZ
556QRfTwVHYiPO69QyZ9QGVghnvN6/rQ8zCpjhJbiRHlbLjUyCry6HP5QKYz1dnNQN
56IeTAoNDFOZYeRo1tpxlOCVNn9Tcv4glf2VvhvQnpegzy7zYqzxH0qby0Rv2T2Gj8
57SXBAGd9U818CAwEAAaNjMGEwHQYDVR0OBBYEFIE0xVBsio0QFGjFpdx4v/CNYRd7
58MB8GA1UdIwQYMBaAFBVzTCyFk7rrBYzCtH5Kh64jw3fCMA8GA1UdEwEB/wQFMAMB
59Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQCrhYxMCi96e3e1
60c2f2TjehW5uyANwU+uX07wuxw31S+JJe+kU7E4tKF2haBVh0bxFvbGVSZB3llYj3
61IUqKxbweKdpqqUOEwi6DvphozjImuZauql8YCEZ7ne/rwrqNJy+YE2O0nMJT7Q1C
62mzpUKSPAOqQ+FFKD3MwfvqsFmIRXriw4DwMsV23DXFEKNtEFCjU2KAGmr6kaLWTn
63LqZTIcKio9YTbpajNZYhDt7dKfdoQJwFYT4REN91JJCU2+QthKVAmCR8r0wkRTj9
64LGTwoLIJdHY/66ddrvRU5QbuWquCzWm87tHwB8NPrKacDarVDROpgVaod63dasol
65EFFbSNzF
66-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/4g/roots.pem b/src/regress/lib/libcrypto/certs/4g/roots.pem
new file mode 100644
index 0000000000..c80efe56b1
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/4g/roots.pem
@@ -0,0 +1,21 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJAOeFXR6ZNJsnMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwMFoXDTMw
6MDcxMjE4MjEwMFowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC7YMiXwUjnu/lzkmvLI+1K
8++tO9dNoMI6zObcoEke+aWC6A/4idf1NCl5JyAw7t4WDl3th+PhgB3drOQasfgh3
9ns8VaT62kkIV8yf9PFMC2Ul1rfkh+AA5oNCShykz2253eT2S7ZnwfuvizJfw2oUj
10H8x4hL6IP8S7dwLbng5Y7JhZS8pgJQwXRgKzNa+TwIt9Q7MJ1oVaA789WI4iFTtH
11A9fzJMPHM+9MahGmQWSgs+juLqJuAguj38Xi2ilE1mTwQpgCZAqK8DKa+H7ewQiz
12TeEkCk74gjqd2/4Deb/D4yoeXNL6XHBGYIWQz0wZsGePClnR8WN8It8yh2x59NnD
13AgMBAAGjYzBhMB0GA1UdDgQWBBQVc0wshZO66wWMwrR+SoeuI8N3wjAfBgNVHSME
14GDAWgBQVc0wshZO66wWMwrR+SoeuI8N3wjAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAHxtkBAKV+gRpip5hMFI39txw
16bsMnFP7YWptKEwXwE3cAbNMcIANkHafdoLei4EMZkjyyhvxuhSdqxI4FAim6k2/n
171NUGE4oNq5e5Vuuz7iyNLDi+rb4LcOUjeNfEeJ7aWq65PvroHlpSvrs2Z8Z0kQVj
18uVX5pgN48C9OX90dPipZVNgwvSTmgzyDy3GBPtGcYpH/huE3SJWmba9TuB59m3p9
1919tHJB/GlzgnqngJKrgqVS24YNtT8ljBdmzXeRWBFDgXTOnW1rNDRN2GYBnva3KV
20RfiZtXC8vOU9zSAdqSSb6fSReVBi7vUB1gNVf1YAHUwapetiHyQDA4G0b0itvA==
21-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/4h/bundle.pem b/src/regress/lib/libcrypto/certs/4h/bundle.pem
new file mode 100644
index 0000000000..f5a79b016b
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/4h/bundle.pem
@@ -0,0 +1,66 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 1
3subject= CN = LibreSSL Test Intermediate CA 1
4issuer= CN = LibreSSL Test Root CA 2
5subject= CN = LibreSSL Test Intermediate CA 1
6issuer= CN = LibreSSL Test Root CA 1
7-----BEGIN CERTIFICATE-----
8MIIDLjCCAhagAwIBAgIJAIZjiC92oa9bMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
9BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
10MTAxWhcNMzAwNzEyMTgyMTAxWjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
11cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA6wUWDBLUw4Ad
127Ylnp+LMKBxjm3FN37Y3cpvRrNequ/yyhzIlc6CDY0GbcHOvTeRK7WzqTaIX3Izt
13pJrd8AkxrCdaUc4Ck4DHfhVzBcXqipSr+MunDPHtJUOhTIzyUhTSCo4zw3ebUtED
14+WOkTJP1gkQF6bWItqHKOlSB0TKXKOj8vzAGGBFbkNKgf7+cwCBTW87qJrBfFsl3
154IEGRhwUDz9KRt8UuZqmJcQdgDQVEOVdmCR/1eLc67WJL3F60H0Mr87BymZgiCHn
16gGxQVxHOVlu0iSwuzqHzgvjZNTwLrUJcwbnhwWqIqQz6bsNL/QO8BVgNqz0kWXS0
17W3H0g1ILrwIDAQABo2AwXjAdBgNVHQ4EFgQUzfu1QQA4qamnsFBVaOV6qtHY1V4w
18HwYDVR0jBBgwFoAUgTTFUGyKjRAUaMWl3Hi/8I1hF3swDAYDVR0TAQH/BAIwADAO
19BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAI+tmW84VI31ll4TpT2Y
20/eGHJkLY8+Qt4ArcrVL3pIXhgoogIV39ETZbnZrYzdGik49QZtICDNP7BzLz27RB
21yIBxB69KoF1VYaCnFFzeEDmfeQnmOUxD9L3uYceEU/jjytl3Ae9XXYaux/zRl1r7
22X77QY6bhI5JBjZaS/5CIsXUMTuPySuOuiosf+6fmIETGl3fiqsd9P6Ae/ed38SP2
23nsIIKGfw3KO2C0lIn5NJGC79TcDHbvuYudafAj1RgLBVY1u8mS7pjU/s3f46WUpD
24Nfn77695ShHNrOXerP7KpM1U6LfxBjEBjDft06oX1sftOmn+BCcLyyvrxpZqsZO5
25RZc=
26-----END CERTIFICATE-----
27-----BEGIN CERTIFICATE-----
28MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9aMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
29BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwMVoXDTMw
30MDcxMjE4MjEwMVowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
31dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM2NdVmEslHo
32/uok5V2/PSwzRCN7T3UiVS7M0LJjzg9WqA9hh8ON4ftWTRm8m1qOcXQ6j8MkpmiM
3395lBBo3TPyt/wXRvA+87yhBbiCxhez2mbpKHz3kaKKo0NYeUsAjrYTyt3rng2OHT
34CEYsbkDs1piWPy9oRLxpsLkhUp3ci7sH4/cR7X9sxFGuei08THR7LzmXniuiFwWZ
356QRfTwVHYiPO69QyZ9QGVghnvN6/rQ8zCpjhJbiRHlbLjUyCry6HP5QKYz1dnNQN
36IeTAoNDFOZYeRo1tpxlOCVNn9Tcv4glf2VvhvQnpegzy7zYqzxH0qby0Rv2T2Gj8
37SXBAGd9U818CAwEAAaNjMGEwHQYDVR0OBBYEFIE0xVBsio0QFGjFpdx4v/CNYRd7
38MB8GA1UdIwQYMBaAFHhb2pNLnd8Q9ozYpkhm2zjz0FudMA8GA1UdEwEB/wQFMAMB
39Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQADG+KAMsIT89Xb
40LkRAvIph/hYIffGh2s0GhInWcey2oi8VOEEcSmfCDlJ1/RDIB0Ue2c5l1DwlkCRy
410MeYH6YsuS9VVWPc78edfVvKKZKTyRzhBbkgWbOdfc1HeFBTCrKyTal2BMyITJMe
426zn/TMdeH81O21/TA9TfRbaYVjd2jpYyp4TnXVg86tPwFH39wxZazjJlhr0rhIS/
43+TDvkwxC6SZ+jbxTb3d2STcQ40o1HtUb/DNbFaSSoe/TFSGdP6RCngO1r5Ilorr5
44N/8epx3c8080qkyqZBJxeQQFRpeKC0kEpEfOzntxVXIT9tJfHg3R6hJL7XXbbhs2
45dbfGH8Tc
46-----END CERTIFICATE-----
47-----BEGIN CERTIFICATE-----
48MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9ZMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
49BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwMVoXDTMw
50MDcxMjE4MjEwMVowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
51dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM2NdVmEslHo
52/uok5V2/PSwzRCN7T3UiVS7M0LJjzg9WqA9hh8ON4ftWTRm8m1qOcXQ6j8MkpmiM
5395lBBo3TPyt/wXRvA+87yhBbiCxhez2mbpKHz3kaKKo0NYeUsAjrYTyt3rng2OHT
54CEYsbkDs1piWPy9oRLxpsLkhUp3ci7sH4/cR7X9sxFGuei08THR7LzmXniuiFwWZ
556QRfTwVHYiPO69QyZ9QGVghnvN6/rQ8zCpjhJbiRHlbLjUyCry6HP5QKYz1dnNQN
56IeTAoNDFOZYeRo1tpxlOCVNn9Tcv4glf2VvhvQnpegzy7zYqzxH0qby0Rv2T2Gj8
57SXBAGd9U818CAwEAAaNjMGEwHQYDVR0OBBYEFIE0xVBsio0QFGjFpdx4v/CNYRd7
58MB8GA1UdIwQYMBaAFBVzTCyFk7rrBYzCtH5Kh64jw3fCMA8GA1UdEwEB/wQFMAMB
59Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQCrhYxMCi96e3e1
60c2f2TjehW5uyANwU+uX07wuxw31S+JJe+kU7E4tKF2haBVh0bxFvbGVSZB3llYj3
61IUqKxbweKdpqqUOEwi6DvphozjImuZauql8YCEZ7ne/rwrqNJy+YE2O0nMJT7Q1C
62mzpUKSPAOqQ+FFKD3MwfvqsFmIRXriw4DwMsV23DXFEKNtEFCjU2KAGmr6kaLWTn
63LqZTIcKio9YTbpajNZYhDt7dKfdoQJwFYT4REN91JJCU2+QthKVAmCR8r0wkRTj9
64LGTwoLIJdHY/66ddrvRU5QbuWquCzWm87tHwB8NPrKacDarVDROpgVaod63dasol
65EFFbSNzF
66-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/4h/roots.pem b/src/regress/lib/libcrypto/certs/4h/roots.pem
new file mode 100644
index 0000000000..b38638aa09
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/4h/roots.pem
@@ -0,0 +1,21 @@
1subject= CN = LibreSSL Test Root CA 2
2issuer= CN = LibreSSL Test Root CA 2
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJANlmX7YwAkovMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwMVoXDTMw
6MDcxMjE4MjEwMVowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDIw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDosjhzyRPC7r0/zj3ylmN/
8SZE39xh9swU7ZCl7aqIA7pYp5qvzOboXR9WMks3jmYkSf+IEg7yzb9L/zOiaFL3v
9wqn0SzSgpnzxSqb6mhnHddZtUJj4Ik+M7JEhdJRfZsIEi3jE4vAMPGkkkM+Ctp37
10Avnu4CjCjSdxp9dkoC1rasAHPJ/Et1UdgngWlvMvVGmc3NWAM6DBjCjufeksq5Od
11FXEKhdNStEoFVXV98MfGryHxCz4u2iI67DGAcevhjKmSKz6a88n1YSMRTO/gJoYy
12JZgS+2mqCVHdi6S28HOBPCdOqwAqFEbj5vpqncf50YSayZjUT7eQ67NHL4n7sYOz
13AgMBAAGjYzBhMB0GA1UdDgQWBBR4W9qTS53fEPaM2KZIZts489BbnTAfBgNVHSME
14GDAWgBR4W9qTS53fEPaM2KZIZts489BbnTAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAbQhW03iBlIVXVT1i9sQ0kY7p
16ieuMsXv7OPZ/UfFnTlBbPP+LGGYl1QedHh8c24Eg9Sz7Q8ThIETihQlJZilXviQh
176ediieu0CDDEzDoVkbLexoaYnyxBO7VibOHQ23hwylgvSPZnajNz00ah8DKLXIKt
181mYYirYZNUYTwkoR033GMjjIyIpgTfWM+x7dKqPEVlZzC7c6NCO1adc7ZPVOlWcZ
19Wmt8df9yNMK0pZc7+nWU7u8iv65VaWkReTvWnPhOOAz06L94CGbIKPqXXyDhddzm
20g8gl40ObA+j+BxPA37yCICafR0iyyZxBF/tcPHXVUDtHBm3aYIDqMQpMOc3Z1A==
21-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/5a/bundle.pem b/src/regress/lib/libcrypto/certs/5a/bundle.pem
new file mode 100644
index 0000000000..784e09284e
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/5a/bundle.pem
@@ -0,0 +1,88 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 2
3subject= CN = LibreSSL Test Intermediate CA 2
4issuer= CN = LibreSSL Test Intermediate CA 1
5subject= CN = LibreSSL Test Intermediate CA 2
6issuer= CN = LibreSSL Test Root CA 2
7subject= CN = LibreSSL Test Intermediate CA 1
8issuer= CN = LibreSSL Test Root CA 1
9-----BEGIN CERTIFICATE-----
10MIIDLjCCAhagAwIBAgIJAIZjiC92oa9fMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
11BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDIwHhcNMjAwNzE0MTgy
12MTA0WhcNMzAwNzEyMTgyMTA0WjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
13cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwqXhw2gULhNs
14Z7sBIqh/TciOMIFpsWU6JDES663BQ7BhVD3uHwsBRGV80+dNz8zi070t+5eoX00O
159GWwIuC4wjhjM0VVid+NJgRdDvjHBpnbdtY8DFh4X7wsXqyHb5Zmbda+f81JiXEF
16m1E8FtNnw5wdhzaZdN2quZsIDq4cnldVoolFbKDuhRBgYXujv64Yh4SkPEzOGiUv
17YQW7kkSVepwchwy2baGYEsZSNQhPasuCCGsjRi1piYJ0mx3FpSO/gtcTwF2DsLtw
18rAFms/HtHIuGOgPROfVllemTTnj+OqutNoYFbpw5qPvDk1b8ciSJOXuzu42hDmkH
19smqlTIz36wIDAQABo2AwXjAdBgNVHQ4EFgQU0lC+eXXjL7i1nIpo28/iBVuyqM4w
20HwYDVR0jBBgwFoAUxwNMYQTwWSAmTGX9yKxo/zsaciIwDAYDVR0TAQH/BAIwADAO
21BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAIq1+kpJ23wZNmttl1dY
22vecnxNYQbztAfblXLofzrNWcjcuFjMA+r6r6ACninGUmaqdzwAWE9kTg2MvEJ/Gi
23+FgXhZRHDozDKkX6LZ5r+KKrUI5IRKXH8yuVTWgL8NJhvYQeG1lJ+NYwiIDDbO1b
24mfR7HJOSM1wY6OmWl+ac72PUdN5h7q6HVIcIFlMVwPQ+Xz5DgDLmh1iglcq8/i1/
25wJRLVN8Wg/Ava3o8PwE7Lp0flfrURTuZqP3RNa+YRy6xCl7kokx2BxygzM/zBHhJ
267EMkJxPVEi28+51iL2COtXgbL3HWPUubM8fUwbv5ftuEE4DhXMRI1o2Tv9WoWcEx
279yM=
28-----END CERTIFICATE-----
29-----BEGIN CERTIFICATE-----
30MIIDOjCCAiKgAwIBAgIJAIZjiC92oa9dMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
31BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
32MTAzWhcNMzAwNzEyMTgyMTAzWjAqMSgwJgYDVQQDDB9MaWJyZVNTTCBUZXN0IElu
33dGVybWVkaWF0ZSBDQSAyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
341bCCdCJL6+v+rzJaS6nrDfElt4ktbb4zrKvIIaB0TwImSbiHxrSYiiylXCTZbehJ
35iXogu41LOMMrwTyXvt8yNs2K0JAE6Rk7cO0Goq5GmT7Dgbd6kfdBUXgdldOA0xel
36z/dJ9ZH4jgyQK1x5zdr+FM63FYKaEguLiLa74DWWG7xBczmmy7C7pn+4VXaIpeIh
37xVgF86F4yRiOCtoEFv5R4ohsysW+bnEJpF/E4/FcAAMP0OevGQZrZJhkVx5Zhrp5
38Xru4PUt4jn7TGBD3XlNPbGt3YvCM0fos70/+YEn9/7mue8l8w/ccZCNkHlc6rhoV
39VhjP+RYJZzeK7jk5viqZ+QIDAQABo2MwYTAdBgNVHQ4EFgQUxwNMYQTwWSAmTGX9
40yKxo/zsaciIwHwYDVR0jBBgwFoAUZ48rls6iM5jYKv5fad8uGlZBR4YwDwYDVR0T
41AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggEBAAHt
42H9FaBdHkCIIBaG3L3eQms3roh5AElb1PlOD8q3gm1WL5P6ZoC73zXjYJeIu65mAt
43+/KSLu5mhj8CO8VQBWVxMSwTOpVadT9XR+nb23NwbhedQ88ef6df9dy9oN/gJx+f
44lzdH3sFkuNkirTYKd6V/eHwXP2a+vxc+bJNmafeE/2BF+g6CDvi38bO3gBAfNg0x
45U6pSiLaWRgljH4klWlzL6G+JiFCZug5aacZnvMtQrqfGDDblAKPYG/xe4ARQIPhz
466D/aY29gNIhYARDG6E1fD54/PT1YxZGj/Y8mskppoxiNVvEPoxfqwzvlyqL1olh6
47vKcYy30m72E6Esrbev8=
48-----END CERTIFICATE-----
49-----BEGIN CERTIFICATE-----
50MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9eMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
51BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwNFoXDTMw
52MDcxMjE4MjEwNFowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
53dGUgQ0EgMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANWwgnQiS+vr
54/q8yWkup6w3xJbeJLW2+M6yryCGgdE8CJkm4h8a0mIospVwk2W3oSYl6ILuNSzjD
55K8E8l77fMjbNitCQBOkZO3DtBqKuRpk+w4G3epH3QVF4HZXTgNMXpc/3SfWR+I4M
56kCtcec3a/hTOtxWCmhILi4i2u+A1lhu8QXM5psuwu6Z/uFV2iKXiIcVYBfOheMkY
57jgraBBb+UeKIbMrFvm5xCaRfxOPxXAADD9DnrxkGa2SYZFceWYa6eV67uD1LeI5+
580xgQ915TT2xrd2LwjNH6LO9P/mBJ/f+5rnvJfMP3HGQjZB5XOq4aFVYYz/kWCWc3
59iu45Ob4qmfkCAwEAAaNjMGEwHQYDVR0OBBYEFMcDTGEE8FkgJkxl/cisaP87GnIi
60MB8GA1UdIwQYMBaAFLwyUPdO1PqOOYNMNxrqJ61rjZ+1MA8GA1UdEwEB/wQFMAMB
61Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQAJuKJAJeVbo1dg
62YojKwWikaIedSVHgzrGY360EIb31oO5Jb+WECw+9x6k8Q3SmRvuRLHFMbcIK/dqc
63qgeqlMh5pePsyaomwLAIz2n2OMRzjW0B0evENUvuqunC1T4Bp1RGTMdiHt46EScy
6479XP3tw/BdCYO5kPYAcBJ4qI0Mf1ofPcuBFufv53UGZ1UVytoKIlGfgcoWmeR9+p
65ZeE7F6bpzC9OE5589ytwCUh61rruDKKK38B4rUaITKKQiyCfH1cilz+HEeyal1vx
66mh2BfMVYYJQowCy8oIcJrNeq9SKb2naPV/fMEGrBbnPrkz/GFsYCYWW/vBVL2XSf
67z3eka+T2
68-----END CERTIFICATE-----
69-----BEGIN CERTIFICATE-----
70MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9cMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
71BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwM1oXDTMw
72MDcxMjE4MjEwM1owKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
73dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMFY/+WkYwrm
74HyQHqjzssWWvPY69ryOukIz8vSxIsKBvC8lWVBBYf+P7KEErr8XWsCJWId7b3ETX
750FKxFvthOqZ7Xgotp7b0Rt5Nl0nJsymPMCWIdiFAli9d9T4rY6DTg0ulsvnZKMg1
76bjW5yZef8TlUsO5jyyPL7ePlVa18/Tg73lmoKwbAfmQwL8yEjI3a9gjDzBs6J0Nx
77GwSUz0XtIMJ2OuDGV1f3yX1eeOOFOLSPKK31oCMVN/U2m64pU0TYsqp52KPP2OKQ
78NADWOUY8hH/iMKcwErB8hJIP5uNcMZcNL/3Fx5fMzB0dYY4qMXWbhNamhrMwaA76
79nDqV03c4aOsCAwEAAaNjMGEwHQYDVR0OBBYEFGePK5bOojOY2Cr+X2nfLhpWQUeG
80MB8GA1UdIwQYMBaAFJb654HjhVrD+wQKAvmil5cqWOAGMA8GA1UdEwEB/wQFMAMB
81Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQChewj1lVVYl7OR
82nqZh4vsKT6/da5ppfxUuTKeaBFumPjxmQEM7swOGCAFL8VIYP7Px4NlC4DihNHox
83M7y1H63ZBI12vePjLOcqxjPXK59v3ECZOz7RjT18QoIJmAB8KeDI/hLJf83PGD4e
84MauFsx3XCxJkHLU22v8k5Sn3n0pWvPCQ+uA8qF+MDhNZq6BuTFyAUHwWZvJGK9PX
85Tj/fh9LskZV3HsNLM1WF0jVMOtxV6nTI2e5RlqqOSlrlyZr/lmXy13r+wVpuyUmR
86R1c/av6G7SGa+F9YbKzLYZx/80kO7AO4RWG5AgjgRcCz+fWyE3W0Yaa8LQjXspGo
87KO4leRha
88-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/5a/roots.pem b/src/regress/lib/libcrypto/certs/5a/roots.pem
new file mode 100644
index 0000000000..9ac396e54e
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/5a/roots.pem
@@ -0,0 +1,42 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJAN+6GAMUhGc2MA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwM1oXDTMw
6MDcxMjE4MjEwM1owIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC2SETQaiYXodTAMu/JV6Jq
8HNsODaA7IyKpHIIuNLcss2mSMvZDMomxjqJNPOQ99Qt6SMfYMiVZxzJ4/CxdIxQX
9wvTr5hz9sfBvG4V9ehd1LhoA69Zxuq/rgagRu7iMYZIlzkw+0oem/aNIGjh+4/W2
102Kv4LTPxiL3F7WPaom2/2jRZS/2xWd63JdfeAb2fVwqqiMHhTbKGRSA8xNZ4AFYh
11mpuVz6gcJ36Z2Ay96igyfLjuw9a6KmoG+0yk7vak4yN22t/ikM7t6COTuPbj+WRP
12KCJKlHv7g+sTYw5cllFT/OdrYqz/0VgvUaDGPDaH6UmmUWBzq6sEffMOa7TSUIr7
13AgMBAAGjYzBhMB0GA1UdDgQWBBSW+ueB44Vaw/sECgL5opeXKljgBjAfBgNVHSME
14GDAWgBSW+ueB44Vaw/sECgL5opeXKljgBjAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAREUFeS3072m7mI9FXAgAYegH
16VppdiU1B9r2wFk9n77MY2y+BH7Gugw8BiW3Z8+23U21L+Tp4BrbEtSdIDujd9xA5
17fwa7Z2fPLvC0VrpEeLD6Nt7NLGe3T859F5G8Q2qBSG39Ix+T11ZH0SCa3Q6oSgq1
18jcXUUndmx5UUjcBVwpvQ5vIQjCu8Z5ECqMceirE5DXx9S1mPjApZlsMft7Bo3a5T
196o1H9ewD7aFFqbrhBJpw8fQMZFQckjmUEPkozIrDBuLsfeJG4NFOTWNxizjbgjuk
20Zb+EDW7w5Ic0nAh3VY/3wzwqN2Oy4o2UIRDyT8+F7XVRa2X7A7XV6TSmwivZbQ==
21-----END CERTIFICATE-----
22subject= CN = LibreSSL Test Root CA 2
23issuer= CN = LibreSSL Test Root CA 2
24-----BEGIN CERTIFICATE-----
25MIIDKjCCAhKgAwIBAgIJANdPNr3tzWx0MA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
26BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwNFoXDTMw
27MDcxMjE4MjEwNFowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDIw
28ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDI8uK3Psn8z9GnvLLQXowb
29nvxbOu/ma3WjeyxOrt/RDU7I46iiFK+Oy3pTYWjhE9i1LJzpcobcTVyDTnQtuKzE
30V73/ehmPTK/moA/SdUvL8vvIUX/o/09SZLNJYkZR8PThuIELLUfoIMsJ73SR7EfN
31+FcW4ioUtfdmzR8tin4rZfP4vZ5BJ68MDgo7zowsv7fYVJhik2eMfVCDxIGZkCyu
32eXJzUS/OcE12AIkwt0S5Mb6339/fmqunhMGoaDYI/0x6yzktIbiB6ZW+U4hl4l8e
33TthBuoKwI5JqWahHD9ZDsYPRVl8E1BkG2XDzb63H15tw/RlcTEokw903nvP525kR
34AgMBAAGjYzBhMB0GA1UdDgQWBBS8MlD3TtT6jjmDTDca6ieta42ftTAfBgNVHSME
35GDAWgBS8MlD3TtT6jjmDTDca6ieta42ftTAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
36DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAgC0I59g4PM7t/vp/QwPiQEEI
37MAsam82+rlac9HVNiybHxQl/Vy+Ve7CASqSBFIa1xgHbO925qO0psnyxYnJvofi3
38VW4WlN8yaeAyDIY3N/ZZldu3vhXL5Cvir301N1Y+CCoUf6notpsLO9YMlLqcO5Qa
39vxzQQEHSxOpzhMKZbdb8sILqGvt4JL469FbtpI8Iylf3WvC5qA5na/aKjTZLW/Ep
40817p6f9PMJuEIDoZJQO8LB6Cs7OT7CbMG1Sbtpj+HHB0ep1PFC5GTqZpOv6uqDp6
410Soz5JXbbTg0+7OYnWIkjqBYJ/frt5VTNnB0mjN2iJFIjXw9fS+5r0tGwMRjGQ==
42-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/5b/bundle.pem b/src/regress/lib/libcrypto/certs/5b/bundle.pem
new file mode 100644
index 0000000000..784e09284e
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/5b/bundle.pem
@@ -0,0 +1,88 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 2
3subject= CN = LibreSSL Test Intermediate CA 2
4issuer= CN = LibreSSL Test Intermediate CA 1
5subject= CN = LibreSSL Test Intermediate CA 2
6issuer= CN = LibreSSL Test Root CA 2
7subject= CN = LibreSSL Test Intermediate CA 1
8issuer= CN = LibreSSL Test Root CA 1
9-----BEGIN CERTIFICATE-----
10MIIDLjCCAhagAwIBAgIJAIZjiC92oa9fMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
11BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDIwHhcNMjAwNzE0MTgy
12MTA0WhcNMzAwNzEyMTgyMTA0WjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
13cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwqXhw2gULhNs
14Z7sBIqh/TciOMIFpsWU6JDES663BQ7BhVD3uHwsBRGV80+dNz8zi070t+5eoX00O
159GWwIuC4wjhjM0VVid+NJgRdDvjHBpnbdtY8DFh4X7wsXqyHb5Zmbda+f81JiXEF
16m1E8FtNnw5wdhzaZdN2quZsIDq4cnldVoolFbKDuhRBgYXujv64Yh4SkPEzOGiUv
17YQW7kkSVepwchwy2baGYEsZSNQhPasuCCGsjRi1piYJ0mx3FpSO/gtcTwF2DsLtw
18rAFms/HtHIuGOgPROfVllemTTnj+OqutNoYFbpw5qPvDk1b8ciSJOXuzu42hDmkH
19smqlTIz36wIDAQABo2AwXjAdBgNVHQ4EFgQU0lC+eXXjL7i1nIpo28/iBVuyqM4w
20HwYDVR0jBBgwFoAUxwNMYQTwWSAmTGX9yKxo/zsaciIwDAYDVR0TAQH/BAIwADAO
21BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAIq1+kpJ23wZNmttl1dY
22vecnxNYQbztAfblXLofzrNWcjcuFjMA+r6r6ACninGUmaqdzwAWE9kTg2MvEJ/Gi
23+FgXhZRHDozDKkX6LZ5r+KKrUI5IRKXH8yuVTWgL8NJhvYQeG1lJ+NYwiIDDbO1b
24mfR7HJOSM1wY6OmWl+ac72PUdN5h7q6HVIcIFlMVwPQ+Xz5DgDLmh1iglcq8/i1/
25wJRLVN8Wg/Ava3o8PwE7Lp0flfrURTuZqP3RNa+YRy6xCl7kokx2BxygzM/zBHhJ
267EMkJxPVEi28+51iL2COtXgbL3HWPUubM8fUwbv5ftuEE4DhXMRI1o2Tv9WoWcEx
279yM=
28-----END CERTIFICATE-----
29-----BEGIN CERTIFICATE-----
30MIIDOjCCAiKgAwIBAgIJAIZjiC92oa9dMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
31BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
32MTAzWhcNMzAwNzEyMTgyMTAzWjAqMSgwJgYDVQQDDB9MaWJyZVNTTCBUZXN0IElu
33dGVybWVkaWF0ZSBDQSAyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
341bCCdCJL6+v+rzJaS6nrDfElt4ktbb4zrKvIIaB0TwImSbiHxrSYiiylXCTZbehJ
35iXogu41LOMMrwTyXvt8yNs2K0JAE6Rk7cO0Goq5GmT7Dgbd6kfdBUXgdldOA0xel
36z/dJ9ZH4jgyQK1x5zdr+FM63FYKaEguLiLa74DWWG7xBczmmy7C7pn+4VXaIpeIh
37xVgF86F4yRiOCtoEFv5R4ohsysW+bnEJpF/E4/FcAAMP0OevGQZrZJhkVx5Zhrp5
38Xru4PUt4jn7TGBD3XlNPbGt3YvCM0fos70/+YEn9/7mue8l8w/ccZCNkHlc6rhoV
39VhjP+RYJZzeK7jk5viqZ+QIDAQABo2MwYTAdBgNVHQ4EFgQUxwNMYQTwWSAmTGX9
40yKxo/zsaciIwHwYDVR0jBBgwFoAUZ48rls6iM5jYKv5fad8uGlZBR4YwDwYDVR0T
41AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggEBAAHt
42H9FaBdHkCIIBaG3L3eQms3roh5AElb1PlOD8q3gm1WL5P6ZoC73zXjYJeIu65mAt
43+/KSLu5mhj8CO8VQBWVxMSwTOpVadT9XR+nb23NwbhedQ88ef6df9dy9oN/gJx+f
44lzdH3sFkuNkirTYKd6V/eHwXP2a+vxc+bJNmafeE/2BF+g6CDvi38bO3gBAfNg0x
45U6pSiLaWRgljH4klWlzL6G+JiFCZug5aacZnvMtQrqfGDDblAKPYG/xe4ARQIPhz
466D/aY29gNIhYARDG6E1fD54/PT1YxZGj/Y8mskppoxiNVvEPoxfqwzvlyqL1olh6
47vKcYy30m72E6Esrbev8=
48-----END CERTIFICATE-----
49-----BEGIN CERTIFICATE-----
50MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9eMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
51BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwNFoXDTMw
52MDcxMjE4MjEwNFowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
53dGUgQ0EgMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANWwgnQiS+vr
54/q8yWkup6w3xJbeJLW2+M6yryCGgdE8CJkm4h8a0mIospVwk2W3oSYl6ILuNSzjD
55K8E8l77fMjbNitCQBOkZO3DtBqKuRpk+w4G3epH3QVF4HZXTgNMXpc/3SfWR+I4M
56kCtcec3a/hTOtxWCmhILi4i2u+A1lhu8QXM5psuwu6Z/uFV2iKXiIcVYBfOheMkY
57jgraBBb+UeKIbMrFvm5xCaRfxOPxXAADD9DnrxkGa2SYZFceWYa6eV67uD1LeI5+
580xgQ915TT2xrd2LwjNH6LO9P/mBJ/f+5rnvJfMP3HGQjZB5XOq4aFVYYz/kWCWc3
59iu45Ob4qmfkCAwEAAaNjMGEwHQYDVR0OBBYEFMcDTGEE8FkgJkxl/cisaP87GnIi
60MB8GA1UdIwQYMBaAFLwyUPdO1PqOOYNMNxrqJ61rjZ+1MA8GA1UdEwEB/wQFMAMB
61Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQAJuKJAJeVbo1dg
62YojKwWikaIedSVHgzrGY360EIb31oO5Jb+WECw+9x6k8Q3SmRvuRLHFMbcIK/dqc
63qgeqlMh5pePsyaomwLAIz2n2OMRzjW0B0evENUvuqunC1T4Bp1RGTMdiHt46EScy
6479XP3tw/BdCYO5kPYAcBJ4qI0Mf1ofPcuBFufv53UGZ1UVytoKIlGfgcoWmeR9+p
65ZeE7F6bpzC9OE5589ytwCUh61rruDKKK38B4rUaITKKQiyCfH1cilz+HEeyal1vx
66mh2BfMVYYJQowCy8oIcJrNeq9SKb2naPV/fMEGrBbnPrkz/GFsYCYWW/vBVL2XSf
67z3eka+T2
68-----END CERTIFICATE-----
69-----BEGIN CERTIFICATE-----
70MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9cMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
71BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwM1oXDTMw
72MDcxMjE4MjEwM1owKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
73dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMFY/+WkYwrm
74HyQHqjzssWWvPY69ryOukIz8vSxIsKBvC8lWVBBYf+P7KEErr8XWsCJWId7b3ETX
750FKxFvthOqZ7Xgotp7b0Rt5Nl0nJsymPMCWIdiFAli9d9T4rY6DTg0ulsvnZKMg1
76bjW5yZef8TlUsO5jyyPL7ePlVa18/Tg73lmoKwbAfmQwL8yEjI3a9gjDzBs6J0Nx
77GwSUz0XtIMJ2OuDGV1f3yX1eeOOFOLSPKK31oCMVN/U2m64pU0TYsqp52KPP2OKQ
78NADWOUY8hH/iMKcwErB8hJIP5uNcMZcNL/3Fx5fMzB0dYY4qMXWbhNamhrMwaA76
79nDqV03c4aOsCAwEAAaNjMGEwHQYDVR0OBBYEFGePK5bOojOY2Cr+X2nfLhpWQUeG
80MB8GA1UdIwQYMBaAFJb654HjhVrD+wQKAvmil5cqWOAGMA8GA1UdEwEB/wQFMAMB
81Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQChewj1lVVYl7OR
82nqZh4vsKT6/da5ppfxUuTKeaBFumPjxmQEM7swOGCAFL8VIYP7Px4NlC4DihNHox
83M7y1H63ZBI12vePjLOcqxjPXK59v3ECZOz7RjT18QoIJmAB8KeDI/hLJf83PGD4e
84MauFsx3XCxJkHLU22v8k5Sn3n0pWvPCQ+uA8qF+MDhNZq6BuTFyAUHwWZvJGK9PX
85Tj/fh9LskZV3HsNLM1WF0jVMOtxV6nTI2e5RlqqOSlrlyZr/lmXy13r+wVpuyUmR
86R1c/av6G7SGa+F9YbKzLYZx/80kO7AO4RWG5AgjgRcCz+fWyE3W0Yaa8LQjXspGo
87KO4leRha
88-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/5b/roots.pem b/src/regress/lib/libcrypto/certs/5b/roots.pem
new file mode 100644
index 0000000000..275ccb1e09
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/5b/roots.pem
@@ -0,0 +1,21 @@
1subject= CN = LibreSSL Test Root CA 2
2issuer= CN = LibreSSL Test Root CA 2
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJANdPNr3tzWx0MA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwNFoXDTMw
6MDcxMjE4MjEwNFowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDIw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDI8uK3Psn8z9GnvLLQXowb
8nvxbOu/ma3WjeyxOrt/RDU7I46iiFK+Oy3pTYWjhE9i1LJzpcobcTVyDTnQtuKzE
9V73/ehmPTK/moA/SdUvL8vvIUX/o/09SZLNJYkZR8PThuIELLUfoIMsJ73SR7EfN
10+FcW4ioUtfdmzR8tin4rZfP4vZ5BJ68MDgo7zowsv7fYVJhik2eMfVCDxIGZkCyu
11eXJzUS/OcE12AIkwt0S5Mb6339/fmqunhMGoaDYI/0x6yzktIbiB6ZW+U4hl4l8e
12TthBuoKwI5JqWahHD9ZDsYPRVl8E1BkG2XDzb63H15tw/RlcTEokw903nvP525kR
13AgMBAAGjYzBhMB0GA1UdDgQWBBS8MlD3TtT6jjmDTDca6ieta42ftTAfBgNVHSME
14GDAWgBS8MlD3TtT6jjmDTDca6ieta42ftTAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAgC0I59g4PM7t/vp/QwPiQEEI
16MAsam82+rlac9HVNiybHxQl/Vy+Ve7CASqSBFIa1xgHbO925qO0psnyxYnJvofi3
17VW4WlN8yaeAyDIY3N/ZZldu3vhXL5Cvir301N1Y+CCoUf6notpsLO9YMlLqcO5Qa
18vxzQQEHSxOpzhMKZbdb8sILqGvt4JL469FbtpI8Iylf3WvC5qA5na/aKjTZLW/Ep
19817p6f9PMJuEIDoZJQO8LB6Cs7OT7CbMG1Sbtpj+HHB0ep1PFC5GTqZpOv6uqDp6
200Soz5JXbbTg0+7OYnWIkjqBYJ/frt5VTNnB0mjN2iJFIjXw9fS+5r0tGwMRjGQ==
21-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/5c/bundle.pem b/src/regress/lib/libcrypto/certs/5c/bundle.pem
new file mode 100644
index 0000000000..784e09284e
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/5c/bundle.pem
@@ -0,0 +1,88 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 2
3subject= CN = LibreSSL Test Intermediate CA 2
4issuer= CN = LibreSSL Test Intermediate CA 1
5subject= CN = LibreSSL Test Intermediate CA 2
6issuer= CN = LibreSSL Test Root CA 2
7subject= CN = LibreSSL Test Intermediate CA 1
8issuer= CN = LibreSSL Test Root CA 1
9-----BEGIN CERTIFICATE-----
10MIIDLjCCAhagAwIBAgIJAIZjiC92oa9fMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
11BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDIwHhcNMjAwNzE0MTgy
12MTA0WhcNMzAwNzEyMTgyMTA0WjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
13cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwqXhw2gULhNs
14Z7sBIqh/TciOMIFpsWU6JDES663BQ7BhVD3uHwsBRGV80+dNz8zi070t+5eoX00O
159GWwIuC4wjhjM0VVid+NJgRdDvjHBpnbdtY8DFh4X7wsXqyHb5Zmbda+f81JiXEF
16m1E8FtNnw5wdhzaZdN2quZsIDq4cnldVoolFbKDuhRBgYXujv64Yh4SkPEzOGiUv
17YQW7kkSVepwchwy2baGYEsZSNQhPasuCCGsjRi1piYJ0mx3FpSO/gtcTwF2DsLtw
18rAFms/HtHIuGOgPROfVllemTTnj+OqutNoYFbpw5qPvDk1b8ciSJOXuzu42hDmkH
19smqlTIz36wIDAQABo2AwXjAdBgNVHQ4EFgQU0lC+eXXjL7i1nIpo28/iBVuyqM4w
20HwYDVR0jBBgwFoAUxwNMYQTwWSAmTGX9yKxo/zsaciIwDAYDVR0TAQH/BAIwADAO
21BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAIq1+kpJ23wZNmttl1dY
22vecnxNYQbztAfblXLofzrNWcjcuFjMA+r6r6ACninGUmaqdzwAWE9kTg2MvEJ/Gi
23+FgXhZRHDozDKkX6LZ5r+KKrUI5IRKXH8yuVTWgL8NJhvYQeG1lJ+NYwiIDDbO1b
24mfR7HJOSM1wY6OmWl+ac72PUdN5h7q6HVIcIFlMVwPQ+Xz5DgDLmh1iglcq8/i1/
25wJRLVN8Wg/Ava3o8PwE7Lp0flfrURTuZqP3RNa+YRy6xCl7kokx2BxygzM/zBHhJ
267EMkJxPVEi28+51iL2COtXgbL3HWPUubM8fUwbv5ftuEE4DhXMRI1o2Tv9WoWcEx
279yM=
28-----END CERTIFICATE-----
29-----BEGIN CERTIFICATE-----
30MIIDOjCCAiKgAwIBAgIJAIZjiC92oa9dMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
31BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
32MTAzWhcNMzAwNzEyMTgyMTAzWjAqMSgwJgYDVQQDDB9MaWJyZVNTTCBUZXN0IElu
33dGVybWVkaWF0ZSBDQSAyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
341bCCdCJL6+v+rzJaS6nrDfElt4ktbb4zrKvIIaB0TwImSbiHxrSYiiylXCTZbehJ
35iXogu41LOMMrwTyXvt8yNs2K0JAE6Rk7cO0Goq5GmT7Dgbd6kfdBUXgdldOA0xel
36z/dJ9ZH4jgyQK1x5zdr+FM63FYKaEguLiLa74DWWG7xBczmmy7C7pn+4VXaIpeIh
37xVgF86F4yRiOCtoEFv5R4ohsysW+bnEJpF/E4/FcAAMP0OevGQZrZJhkVx5Zhrp5
38Xru4PUt4jn7TGBD3XlNPbGt3YvCM0fos70/+YEn9/7mue8l8w/ccZCNkHlc6rhoV
39VhjP+RYJZzeK7jk5viqZ+QIDAQABo2MwYTAdBgNVHQ4EFgQUxwNMYQTwWSAmTGX9
40yKxo/zsaciIwHwYDVR0jBBgwFoAUZ48rls6iM5jYKv5fad8uGlZBR4YwDwYDVR0T
41AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggEBAAHt
42H9FaBdHkCIIBaG3L3eQms3roh5AElb1PlOD8q3gm1WL5P6ZoC73zXjYJeIu65mAt
43+/KSLu5mhj8CO8VQBWVxMSwTOpVadT9XR+nb23NwbhedQ88ef6df9dy9oN/gJx+f
44lzdH3sFkuNkirTYKd6V/eHwXP2a+vxc+bJNmafeE/2BF+g6CDvi38bO3gBAfNg0x
45U6pSiLaWRgljH4klWlzL6G+JiFCZug5aacZnvMtQrqfGDDblAKPYG/xe4ARQIPhz
466D/aY29gNIhYARDG6E1fD54/PT1YxZGj/Y8mskppoxiNVvEPoxfqwzvlyqL1olh6
47vKcYy30m72E6Esrbev8=
48-----END CERTIFICATE-----
49-----BEGIN CERTIFICATE-----
50MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9eMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
51BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwNFoXDTMw
52MDcxMjE4MjEwNFowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
53dGUgQ0EgMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANWwgnQiS+vr
54/q8yWkup6w3xJbeJLW2+M6yryCGgdE8CJkm4h8a0mIospVwk2W3oSYl6ILuNSzjD
55K8E8l77fMjbNitCQBOkZO3DtBqKuRpk+w4G3epH3QVF4HZXTgNMXpc/3SfWR+I4M
56kCtcec3a/hTOtxWCmhILi4i2u+A1lhu8QXM5psuwu6Z/uFV2iKXiIcVYBfOheMkY
57jgraBBb+UeKIbMrFvm5xCaRfxOPxXAADD9DnrxkGa2SYZFceWYa6eV67uD1LeI5+
580xgQ915TT2xrd2LwjNH6LO9P/mBJ/f+5rnvJfMP3HGQjZB5XOq4aFVYYz/kWCWc3
59iu45Ob4qmfkCAwEAAaNjMGEwHQYDVR0OBBYEFMcDTGEE8FkgJkxl/cisaP87GnIi
60MB8GA1UdIwQYMBaAFLwyUPdO1PqOOYNMNxrqJ61rjZ+1MA8GA1UdEwEB/wQFMAMB
61Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQAJuKJAJeVbo1dg
62YojKwWikaIedSVHgzrGY360EIb31oO5Jb+WECw+9x6k8Q3SmRvuRLHFMbcIK/dqc
63qgeqlMh5pePsyaomwLAIz2n2OMRzjW0B0evENUvuqunC1T4Bp1RGTMdiHt46EScy
6479XP3tw/BdCYO5kPYAcBJ4qI0Mf1ofPcuBFufv53UGZ1UVytoKIlGfgcoWmeR9+p
65ZeE7F6bpzC9OE5589ytwCUh61rruDKKK38B4rUaITKKQiyCfH1cilz+HEeyal1vx
66mh2BfMVYYJQowCy8oIcJrNeq9SKb2naPV/fMEGrBbnPrkz/GFsYCYWW/vBVL2XSf
67z3eka+T2
68-----END CERTIFICATE-----
69-----BEGIN CERTIFICATE-----
70MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9cMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
71BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwM1oXDTMw
72MDcxMjE4MjEwM1owKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
73dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMFY/+WkYwrm
74HyQHqjzssWWvPY69ryOukIz8vSxIsKBvC8lWVBBYf+P7KEErr8XWsCJWId7b3ETX
750FKxFvthOqZ7Xgotp7b0Rt5Nl0nJsymPMCWIdiFAli9d9T4rY6DTg0ulsvnZKMg1
76bjW5yZef8TlUsO5jyyPL7ePlVa18/Tg73lmoKwbAfmQwL8yEjI3a9gjDzBs6J0Nx
77GwSUz0XtIMJ2OuDGV1f3yX1eeOOFOLSPKK31oCMVN/U2m64pU0TYsqp52KPP2OKQ
78NADWOUY8hH/iMKcwErB8hJIP5uNcMZcNL/3Fx5fMzB0dYY4qMXWbhNamhrMwaA76
79nDqV03c4aOsCAwEAAaNjMGEwHQYDVR0OBBYEFGePK5bOojOY2Cr+X2nfLhpWQUeG
80MB8GA1UdIwQYMBaAFJb654HjhVrD+wQKAvmil5cqWOAGMA8GA1UdEwEB/wQFMAMB
81Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQChewj1lVVYl7OR
82nqZh4vsKT6/da5ppfxUuTKeaBFumPjxmQEM7swOGCAFL8VIYP7Px4NlC4DihNHox
83M7y1H63ZBI12vePjLOcqxjPXK59v3ECZOz7RjT18QoIJmAB8KeDI/hLJf83PGD4e
84MauFsx3XCxJkHLU22v8k5Sn3n0pWvPCQ+uA8qF+MDhNZq6BuTFyAUHwWZvJGK9PX
85Tj/fh9LskZV3HsNLM1WF0jVMOtxV6nTI2e5RlqqOSlrlyZr/lmXy13r+wVpuyUmR
86R1c/av6G7SGa+F9YbKzLYZx/80kO7AO4RWG5AgjgRcCz+fWyE3W0Yaa8LQjXspGo
87KO4leRha
88-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/5c/roots.pem b/src/regress/lib/libcrypto/certs/5c/roots.pem
new file mode 100644
index 0000000000..074966ef6e
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/5c/roots.pem
@@ -0,0 +1,21 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJAN+6GAMUhGc2MA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwM1oXDTMw
6MDcxMjE4MjEwM1owIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC2SETQaiYXodTAMu/JV6Jq
8HNsODaA7IyKpHIIuNLcss2mSMvZDMomxjqJNPOQ99Qt6SMfYMiVZxzJ4/CxdIxQX
9wvTr5hz9sfBvG4V9ehd1LhoA69Zxuq/rgagRu7iMYZIlzkw+0oem/aNIGjh+4/W2
102Kv4LTPxiL3F7WPaom2/2jRZS/2xWd63JdfeAb2fVwqqiMHhTbKGRSA8xNZ4AFYh
11mpuVz6gcJ36Z2Ay96igyfLjuw9a6KmoG+0yk7vak4yN22t/ikM7t6COTuPbj+WRP
12KCJKlHv7g+sTYw5cllFT/OdrYqz/0VgvUaDGPDaH6UmmUWBzq6sEffMOa7TSUIr7
13AgMBAAGjYzBhMB0GA1UdDgQWBBSW+ueB44Vaw/sECgL5opeXKljgBjAfBgNVHSME
14GDAWgBSW+ueB44Vaw/sECgL5opeXKljgBjAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAREUFeS3072m7mI9FXAgAYegH
16VppdiU1B9r2wFk9n77MY2y+BH7Gugw8BiW3Z8+23U21L+Tp4BrbEtSdIDujd9xA5
17fwa7Z2fPLvC0VrpEeLD6Nt7NLGe3T859F5G8Q2qBSG39Ix+T11ZH0SCa3Q6oSgq1
18jcXUUndmx5UUjcBVwpvQ5vIQjCu8Z5ECqMceirE5DXx9S1mPjApZlsMft7Bo3a5T
196o1H9ewD7aFFqbrhBJpw8fQMZFQckjmUEPkozIrDBuLsfeJG4NFOTWNxizjbgjuk
20Zb+EDW7w5Ic0nAh3VY/3wzwqN2Oy4o2UIRDyT8+F7XVRa2X7A7XV6TSmwivZbQ==
21-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/5d/bundle.pem b/src/regress/lib/libcrypto/certs/5d/bundle.pem
new file mode 100644
index 0000000000..f4c60b5a62
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/5d/bundle.pem
@@ -0,0 +1,66 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 2
3subject= CN = LibreSSL Test Intermediate CA 2
4issuer= CN = LibreSSL Test Root CA 2
5subject= CN = LibreSSL Test Intermediate CA 1
6issuer= CN = LibreSSL Test Root CA 1
7-----BEGIN CERTIFICATE-----
8MIIDLjCCAhagAwIBAgIJAIZjiC92oa9fMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
9BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDIwHhcNMjAwNzE0MTgy
10MTA0WhcNMzAwNzEyMTgyMTA0WjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
11cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwqXhw2gULhNs
12Z7sBIqh/TciOMIFpsWU6JDES663BQ7BhVD3uHwsBRGV80+dNz8zi070t+5eoX00O
139GWwIuC4wjhjM0VVid+NJgRdDvjHBpnbdtY8DFh4X7wsXqyHb5Zmbda+f81JiXEF
14m1E8FtNnw5wdhzaZdN2quZsIDq4cnldVoolFbKDuhRBgYXujv64Yh4SkPEzOGiUv
15YQW7kkSVepwchwy2baGYEsZSNQhPasuCCGsjRi1piYJ0mx3FpSO/gtcTwF2DsLtw
16rAFms/HtHIuGOgPROfVllemTTnj+OqutNoYFbpw5qPvDk1b8ciSJOXuzu42hDmkH
17smqlTIz36wIDAQABo2AwXjAdBgNVHQ4EFgQU0lC+eXXjL7i1nIpo28/iBVuyqM4w
18HwYDVR0jBBgwFoAUxwNMYQTwWSAmTGX9yKxo/zsaciIwDAYDVR0TAQH/BAIwADAO
19BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAIq1+kpJ23wZNmttl1dY
20vecnxNYQbztAfblXLofzrNWcjcuFjMA+r6r6ACninGUmaqdzwAWE9kTg2MvEJ/Gi
21+FgXhZRHDozDKkX6LZ5r+KKrUI5IRKXH8yuVTWgL8NJhvYQeG1lJ+NYwiIDDbO1b
22mfR7HJOSM1wY6OmWl+ac72PUdN5h7q6HVIcIFlMVwPQ+Xz5DgDLmh1iglcq8/i1/
23wJRLVN8Wg/Ava3o8PwE7Lp0flfrURTuZqP3RNa+YRy6xCl7kokx2BxygzM/zBHhJ
247EMkJxPVEi28+51iL2COtXgbL3HWPUubM8fUwbv5ftuEE4DhXMRI1o2Tv9WoWcEx
259yM=
26-----END CERTIFICATE-----
27-----BEGIN CERTIFICATE-----
28MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9eMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
29BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwNFoXDTMw
30MDcxMjE4MjEwNFowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
31dGUgQ0EgMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANWwgnQiS+vr
32/q8yWkup6w3xJbeJLW2+M6yryCGgdE8CJkm4h8a0mIospVwk2W3oSYl6ILuNSzjD
33K8E8l77fMjbNitCQBOkZO3DtBqKuRpk+w4G3epH3QVF4HZXTgNMXpc/3SfWR+I4M
34kCtcec3a/hTOtxWCmhILi4i2u+A1lhu8QXM5psuwu6Z/uFV2iKXiIcVYBfOheMkY
35jgraBBb+UeKIbMrFvm5xCaRfxOPxXAADD9DnrxkGa2SYZFceWYa6eV67uD1LeI5+
360xgQ915TT2xrd2LwjNH6LO9P/mBJ/f+5rnvJfMP3HGQjZB5XOq4aFVYYz/kWCWc3
37iu45Ob4qmfkCAwEAAaNjMGEwHQYDVR0OBBYEFMcDTGEE8FkgJkxl/cisaP87GnIi
38MB8GA1UdIwQYMBaAFLwyUPdO1PqOOYNMNxrqJ61rjZ+1MA8GA1UdEwEB/wQFMAMB
39Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQAJuKJAJeVbo1dg
40YojKwWikaIedSVHgzrGY360EIb31oO5Jb+WECw+9x6k8Q3SmRvuRLHFMbcIK/dqc
41qgeqlMh5pePsyaomwLAIz2n2OMRzjW0B0evENUvuqunC1T4Bp1RGTMdiHt46EScy
4279XP3tw/BdCYO5kPYAcBJ4qI0Mf1ofPcuBFufv53UGZ1UVytoKIlGfgcoWmeR9+p
43ZeE7F6bpzC9OE5589ytwCUh61rruDKKK38B4rUaITKKQiyCfH1cilz+HEeyal1vx
44mh2BfMVYYJQowCy8oIcJrNeq9SKb2naPV/fMEGrBbnPrkz/GFsYCYWW/vBVL2XSf
45z3eka+T2
46-----END CERTIFICATE-----
47-----BEGIN CERTIFICATE-----
48MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9cMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
49BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwM1oXDTMw
50MDcxMjE4MjEwM1owKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
51dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMFY/+WkYwrm
52HyQHqjzssWWvPY69ryOukIz8vSxIsKBvC8lWVBBYf+P7KEErr8XWsCJWId7b3ETX
530FKxFvthOqZ7Xgotp7b0Rt5Nl0nJsymPMCWIdiFAli9d9T4rY6DTg0ulsvnZKMg1
54bjW5yZef8TlUsO5jyyPL7ePlVa18/Tg73lmoKwbAfmQwL8yEjI3a9gjDzBs6J0Nx
55GwSUz0XtIMJ2OuDGV1f3yX1eeOOFOLSPKK31oCMVN/U2m64pU0TYsqp52KPP2OKQ
56NADWOUY8hH/iMKcwErB8hJIP5uNcMZcNL/3Fx5fMzB0dYY4qMXWbhNamhrMwaA76
57nDqV03c4aOsCAwEAAaNjMGEwHQYDVR0OBBYEFGePK5bOojOY2Cr+X2nfLhpWQUeG
58MB8GA1UdIwQYMBaAFJb654HjhVrD+wQKAvmil5cqWOAGMA8GA1UdEwEB/wQFMAMB
59Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQChewj1lVVYl7OR
60nqZh4vsKT6/da5ppfxUuTKeaBFumPjxmQEM7swOGCAFL8VIYP7Px4NlC4DihNHox
61M7y1H63ZBI12vePjLOcqxjPXK59v3ECZOz7RjT18QoIJmAB8KeDI/hLJf83PGD4e
62MauFsx3XCxJkHLU22v8k5Sn3n0pWvPCQ+uA8qF+MDhNZq6BuTFyAUHwWZvJGK9PX
63Tj/fh9LskZV3HsNLM1WF0jVMOtxV6nTI2e5RlqqOSlrlyZr/lmXy13r+wVpuyUmR
64R1c/av6G7SGa+F9YbKzLYZx/80kO7AO4RWG5AgjgRcCz+fWyE3W0Yaa8LQjXspGo
65KO4leRha
66-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/5d/roots.pem b/src/regress/lib/libcrypto/certs/5d/roots.pem
new file mode 100644
index 0000000000..9ac396e54e
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/5d/roots.pem
@@ -0,0 +1,42 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJAN+6GAMUhGc2MA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwM1oXDTMw
6MDcxMjE4MjEwM1owIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC2SETQaiYXodTAMu/JV6Jq
8HNsODaA7IyKpHIIuNLcss2mSMvZDMomxjqJNPOQ99Qt6SMfYMiVZxzJ4/CxdIxQX
9wvTr5hz9sfBvG4V9ehd1LhoA69Zxuq/rgagRu7iMYZIlzkw+0oem/aNIGjh+4/W2
102Kv4LTPxiL3F7WPaom2/2jRZS/2xWd63JdfeAb2fVwqqiMHhTbKGRSA8xNZ4AFYh
11mpuVz6gcJ36Z2Ay96igyfLjuw9a6KmoG+0yk7vak4yN22t/ikM7t6COTuPbj+WRP
12KCJKlHv7g+sTYw5cllFT/OdrYqz/0VgvUaDGPDaH6UmmUWBzq6sEffMOa7TSUIr7
13AgMBAAGjYzBhMB0GA1UdDgQWBBSW+ueB44Vaw/sECgL5opeXKljgBjAfBgNVHSME
14GDAWgBSW+ueB44Vaw/sECgL5opeXKljgBjAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAREUFeS3072m7mI9FXAgAYegH
16VppdiU1B9r2wFk9n77MY2y+BH7Gugw8BiW3Z8+23U21L+Tp4BrbEtSdIDujd9xA5
17fwa7Z2fPLvC0VrpEeLD6Nt7NLGe3T859F5G8Q2qBSG39Ix+T11ZH0SCa3Q6oSgq1
18jcXUUndmx5UUjcBVwpvQ5vIQjCu8Z5ECqMceirE5DXx9S1mPjApZlsMft7Bo3a5T
196o1H9ewD7aFFqbrhBJpw8fQMZFQckjmUEPkozIrDBuLsfeJG4NFOTWNxizjbgjuk
20Zb+EDW7w5Ic0nAh3VY/3wzwqN2Oy4o2UIRDyT8+F7XVRa2X7A7XV6TSmwivZbQ==
21-----END CERTIFICATE-----
22subject= CN = LibreSSL Test Root CA 2
23issuer= CN = LibreSSL Test Root CA 2
24-----BEGIN CERTIFICATE-----
25MIIDKjCCAhKgAwIBAgIJANdPNr3tzWx0MA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
26BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwNFoXDTMw
27MDcxMjE4MjEwNFowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDIw
28ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDI8uK3Psn8z9GnvLLQXowb
29nvxbOu/ma3WjeyxOrt/RDU7I46iiFK+Oy3pTYWjhE9i1LJzpcobcTVyDTnQtuKzE
30V73/ehmPTK/moA/SdUvL8vvIUX/o/09SZLNJYkZR8PThuIELLUfoIMsJ73SR7EfN
31+FcW4ioUtfdmzR8tin4rZfP4vZ5BJ68MDgo7zowsv7fYVJhik2eMfVCDxIGZkCyu
32eXJzUS/OcE12AIkwt0S5Mb6339/fmqunhMGoaDYI/0x6yzktIbiB6ZW+U4hl4l8e
33TthBuoKwI5JqWahHD9ZDsYPRVl8E1BkG2XDzb63H15tw/RlcTEokw903nvP525kR
34AgMBAAGjYzBhMB0GA1UdDgQWBBS8MlD3TtT6jjmDTDca6ieta42ftTAfBgNVHSME
35GDAWgBS8MlD3TtT6jjmDTDca6ieta42ftTAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
36DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAgC0I59g4PM7t/vp/QwPiQEEI
37MAsam82+rlac9HVNiybHxQl/Vy+Ve7CASqSBFIa1xgHbO925qO0psnyxYnJvofi3
38VW4WlN8yaeAyDIY3N/ZZldu3vhXL5Cvir301N1Y+CCoUf6notpsLO9YMlLqcO5Qa
39vxzQQEHSxOpzhMKZbdb8sILqGvt4JL469FbtpI8Iylf3WvC5qA5na/aKjTZLW/Ep
40817p6f9PMJuEIDoZJQO8LB6Cs7OT7CbMG1Sbtpj+HHB0ep1PFC5GTqZpOv6uqDp6
410Soz5JXbbTg0+7OYnWIkjqBYJ/frt5VTNnB0mjN2iJFIjXw9fS+5r0tGwMRjGQ==
42-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/5e/bundle.pem b/src/regress/lib/libcrypto/certs/5e/bundle.pem
new file mode 100644
index 0000000000..9acc24685c
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/5e/bundle.pem
@@ -0,0 +1,66 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 2
3subject= CN = LibreSSL Test Intermediate CA 2
4issuer= CN = LibreSSL Test Intermediate CA 1
5subject= CN = LibreSSL Test Intermediate CA 2
6issuer= CN = LibreSSL Test Root CA 2
7-----BEGIN CERTIFICATE-----
8MIIDLjCCAhagAwIBAgIJAIZjiC92oa9fMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
9BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDIwHhcNMjAwNzE0MTgy
10MTA0WhcNMzAwNzEyMTgyMTA0WjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
11cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwqXhw2gULhNs
12Z7sBIqh/TciOMIFpsWU6JDES663BQ7BhVD3uHwsBRGV80+dNz8zi070t+5eoX00O
139GWwIuC4wjhjM0VVid+NJgRdDvjHBpnbdtY8DFh4X7wsXqyHb5Zmbda+f81JiXEF
14m1E8FtNnw5wdhzaZdN2quZsIDq4cnldVoolFbKDuhRBgYXujv64Yh4SkPEzOGiUv
15YQW7kkSVepwchwy2baGYEsZSNQhPasuCCGsjRi1piYJ0mx3FpSO/gtcTwF2DsLtw
16rAFms/HtHIuGOgPROfVllemTTnj+OqutNoYFbpw5qPvDk1b8ciSJOXuzu42hDmkH
17smqlTIz36wIDAQABo2AwXjAdBgNVHQ4EFgQU0lC+eXXjL7i1nIpo28/iBVuyqM4w
18HwYDVR0jBBgwFoAUxwNMYQTwWSAmTGX9yKxo/zsaciIwDAYDVR0TAQH/BAIwADAO
19BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAIq1+kpJ23wZNmttl1dY
20vecnxNYQbztAfblXLofzrNWcjcuFjMA+r6r6ACninGUmaqdzwAWE9kTg2MvEJ/Gi
21+FgXhZRHDozDKkX6LZ5r+KKrUI5IRKXH8yuVTWgL8NJhvYQeG1lJ+NYwiIDDbO1b
22mfR7HJOSM1wY6OmWl+ac72PUdN5h7q6HVIcIFlMVwPQ+Xz5DgDLmh1iglcq8/i1/
23wJRLVN8Wg/Ava3o8PwE7Lp0flfrURTuZqP3RNa+YRy6xCl7kokx2BxygzM/zBHhJ
247EMkJxPVEi28+51iL2COtXgbL3HWPUubM8fUwbv5ftuEE4DhXMRI1o2Tv9WoWcEx
259yM=
26-----END CERTIFICATE-----
27-----BEGIN CERTIFICATE-----
28MIIDOjCCAiKgAwIBAgIJAIZjiC92oa9dMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
29BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
30MTAzWhcNMzAwNzEyMTgyMTAzWjAqMSgwJgYDVQQDDB9MaWJyZVNTTCBUZXN0IElu
31dGVybWVkaWF0ZSBDQSAyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
321bCCdCJL6+v+rzJaS6nrDfElt4ktbb4zrKvIIaB0TwImSbiHxrSYiiylXCTZbehJ
33iXogu41LOMMrwTyXvt8yNs2K0JAE6Rk7cO0Goq5GmT7Dgbd6kfdBUXgdldOA0xel
34z/dJ9ZH4jgyQK1x5zdr+FM63FYKaEguLiLa74DWWG7xBczmmy7C7pn+4VXaIpeIh
35xVgF86F4yRiOCtoEFv5R4ohsysW+bnEJpF/E4/FcAAMP0OevGQZrZJhkVx5Zhrp5
36Xru4PUt4jn7TGBD3XlNPbGt3YvCM0fos70/+YEn9/7mue8l8w/ccZCNkHlc6rhoV
37VhjP+RYJZzeK7jk5viqZ+QIDAQABo2MwYTAdBgNVHQ4EFgQUxwNMYQTwWSAmTGX9
38yKxo/zsaciIwHwYDVR0jBBgwFoAUZ48rls6iM5jYKv5fad8uGlZBR4YwDwYDVR0T
39AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggEBAAHt
40H9FaBdHkCIIBaG3L3eQms3roh5AElb1PlOD8q3gm1WL5P6ZoC73zXjYJeIu65mAt
41+/KSLu5mhj8CO8VQBWVxMSwTOpVadT9XR+nb23NwbhedQ88ef6df9dy9oN/gJx+f
42lzdH3sFkuNkirTYKd6V/eHwXP2a+vxc+bJNmafeE/2BF+g6CDvi38bO3gBAfNg0x
43U6pSiLaWRgljH4klWlzL6G+JiFCZug5aacZnvMtQrqfGDDblAKPYG/xe4ARQIPhz
446D/aY29gNIhYARDG6E1fD54/PT1YxZGj/Y8mskppoxiNVvEPoxfqwzvlyqL1olh6
45vKcYy30m72E6Esrbev8=
46-----END CERTIFICATE-----
47-----BEGIN CERTIFICATE-----
48MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9eMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
49BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwNFoXDTMw
50MDcxMjE4MjEwNFowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
51dGUgQ0EgMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANWwgnQiS+vr
52/q8yWkup6w3xJbeJLW2+M6yryCGgdE8CJkm4h8a0mIospVwk2W3oSYl6ILuNSzjD
53K8E8l77fMjbNitCQBOkZO3DtBqKuRpk+w4G3epH3QVF4HZXTgNMXpc/3SfWR+I4M
54kCtcec3a/hTOtxWCmhILi4i2u+A1lhu8QXM5psuwu6Z/uFV2iKXiIcVYBfOheMkY
55jgraBBb+UeKIbMrFvm5xCaRfxOPxXAADD9DnrxkGa2SYZFceWYa6eV67uD1LeI5+
560xgQ915TT2xrd2LwjNH6LO9P/mBJ/f+5rnvJfMP3HGQjZB5XOq4aFVYYz/kWCWc3
57iu45Ob4qmfkCAwEAAaNjMGEwHQYDVR0OBBYEFMcDTGEE8FkgJkxl/cisaP87GnIi
58MB8GA1UdIwQYMBaAFLwyUPdO1PqOOYNMNxrqJ61rjZ+1MA8GA1UdEwEB/wQFMAMB
59Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQAJuKJAJeVbo1dg
60YojKwWikaIedSVHgzrGY360EIb31oO5Jb+WECw+9x6k8Q3SmRvuRLHFMbcIK/dqc
61qgeqlMh5pePsyaomwLAIz2n2OMRzjW0B0evENUvuqunC1T4Bp1RGTMdiHt46EScy
6279XP3tw/BdCYO5kPYAcBJ4qI0Mf1ofPcuBFufv53UGZ1UVytoKIlGfgcoWmeR9+p
63ZeE7F6bpzC9OE5589ytwCUh61rruDKKK38B4rUaITKKQiyCfH1cilz+HEeyal1vx
64mh2BfMVYYJQowCy8oIcJrNeq9SKb2naPV/fMEGrBbnPrkz/GFsYCYWW/vBVL2XSf
65z3eka+T2
66-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/5e/roots.pem b/src/regress/lib/libcrypto/certs/5e/roots.pem
new file mode 100644
index 0000000000..9ac396e54e
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/5e/roots.pem
@@ -0,0 +1,42 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJAN+6GAMUhGc2MA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwM1oXDTMw
6MDcxMjE4MjEwM1owIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC2SETQaiYXodTAMu/JV6Jq
8HNsODaA7IyKpHIIuNLcss2mSMvZDMomxjqJNPOQ99Qt6SMfYMiVZxzJ4/CxdIxQX
9wvTr5hz9sfBvG4V9ehd1LhoA69Zxuq/rgagRu7iMYZIlzkw+0oem/aNIGjh+4/W2
102Kv4LTPxiL3F7WPaom2/2jRZS/2xWd63JdfeAb2fVwqqiMHhTbKGRSA8xNZ4AFYh
11mpuVz6gcJ36Z2Ay96igyfLjuw9a6KmoG+0yk7vak4yN22t/ikM7t6COTuPbj+WRP
12KCJKlHv7g+sTYw5cllFT/OdrYqz/0VgvUaDGPDaH6UmmUWBzq6sEffMOa7TSUIr7
13AgMBAAGjYzBhMB0GA1UdDgQWBBSW+ueB44Vaw/sECgL5opeXKljgBjAfBgNVHSME
14GDAWgBSW+ueB44Vaw/sECgL5opeXKljgBjAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAREUFeS3072m7mI9FXAgAYegH
16VppdiU1B9r2wFk9n77MY2y+BH7Gugw8BiW3Z8+23U21L+Tp4BrbEtSdIDujd9xA5
17fwa7Z2fPLvC0VrpEeLD6Nt7NLGe3T859F5G8Q2qBSG39Ix+T11ZH0SCa3Q6oSgq1
18jcXUUndmx5UUjcBVwpvQ5vIQjCu8Z5ECqMceirE5DXx9S1mPjApZlsMft7Bo3a5T
196o1H9ewD7aFFqbrhBJpw8fQMZFQckjmUEPkozIrDBuLsfeJG4NFOTWNxizjbgjuk
20Zb+EDW7w5Ic0nAh3VY/3wzwqN2Oy4o2UIRDyT8+F7XVRa2X7A7XV6TSmwivZbQ==
21-----END CERTIFICATE-----
22subject= CN = LibreSSL Test Root CA 2
23issuer= CN = LibreSSL Test Root CA 2
24-----BEGIN CERTIFICATE-----
25MIIDKjCCAhKgAwIBAgIJANdPNr3tzWx0MA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
26BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwNFoXDTMw
27MDcxMjE4MjEwNFowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDIw
28ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDI8uK3Psn8z9GnvLLQXowb
29nvxbOu/ma3WjeyxOrt/RDU7I46iiFK+Oy3pTYWjhE9i1LJzpcobcTVyDTnQtuKzE
30V73/ehmPTK/moA/SdUvL8vvIUX/o/09SZLNJYkZR8PThuIELLUfoIMsJ73SR7EfN
31+FcW4ioUtfdmzR8tin4rZfP4vZ5BJ68MDgo7zowsv7fYVJhik2eMfVCDxIGZkCyu
32eXJzUS/OcE12AIkwt0S5Mb6339/fmqunhMGoaDYI/0x6yzktIbiB6ZW+U4hl4l8e
33TthBuoKwI5JqWahHD9ZDsYPRVl8E1BkG2XDzb63H15tw/RlcTEokw903nvP525kR
34AgMBAAGjYzBhMB0GA1UdDgQWBBS8MlD3TtT6jjmDTDca6ieta42ftTAfBgNVHSME
35GDAWgBS8MlD3TtT6jjmDTDca6ieta42ftTAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
36DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAgC0I59g4PM7t/vp/QwPiQEEI
37MAsam82+rlac9HVNiybHxQl/Vy+Ve7CASqSBFIa1xgHbO925qO0psnyxYnJvofi3
38VW4WlN8yaeAyDIY3N/ZZldu3vhXL5Cvir301N1Y+CCoUf6notpsLO9YMlLqcO5Qa
39vxzQQEHSxOpzhMKZbdb8sILqGvt4JL469FbtpI8Iylf3WvC5qA5na/aKjTZLW/Ep
40817p6f9PMJuEIDoZJQO8LB6Cs7OT7CbMG1Sbtpj+HHB0ep1PFC5GTqZpOv6uqDp6
410Soz5JXbbTg0+7OYnWIkjqBYJ/frt5VTNnB0mjN2iJFIjXw9fS+5r0tGwMRjGQ==
42-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/5f/bundle.pem b/src/regress/lib/libcrypto/certs/5f/bundle.pem
new file mode 100644
index 0000000000..bcb530c072
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/5f/bundle.pem
@@ -0,0 +1,66 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 2
3subject= CN = LibreSSL Test Intermediate CA 2
4issuer= CN = LibreSSL Test Intermediate CA 1
5subject= CN = LibreSSL Test Intermediate CA 1
6issuer= CN = LibreSSL Test Root CA 1
7-----BEGIN CERTIFICATE-----
8MIIDLjCCAhagAwIBAgIJAIZjiC92oa9fMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
9BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDIwHhcNMjAwNzE0MTgy
10MTA0WhcNMzAwNzEyMTgyMTA0WjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
11cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwqXhw2gULhNs
12Z7sBIqh/TciOMIFpsWU6JDES663BQ7BhVD3uHwsBRGV80+dNz8zi070t+5eoX00O
139GWwIuC4wjhjM0VVid+NJgRdDvjHBpnbdtY8DFh4X7wsXqyHb5Zmbda+f81JiXEF
14m1E8FtNnw5wdhzaZdN2quZsIDq4cnldVoolFbKDuhRBgYXujv64Yh4SkPEzOGiUv
15YQW7kkSVepwchwy2baGYEsZSNQhPasuCCGsjRi1piYJ0mx3FpSO/gtcTwF2DsLtw
16rAFms/HtHIuGOgPROfVllemTTnj+OqutNoYFbpw5qPvDk1b8ciSJOXuzu42hDmkH
17smqlTIz36wIDAQABo2AwXjAdBgNVHQ4EFgQU0lC+eXXjL7i1nIpo28/iBVuyqM4w
18HwYDVR0jBBgwFoAUxwNMYQTwWSAmTGX9yKxo/zsaciIwDAYDVR0TAQH/BAIwADAO
19BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAIq1+kpJ23wZNmttl1dY
20vecnxNYQbztAfblXLofzrNWcjcuFjMA+r6r6ACninGUmaqdzwAWE9kTg2MvEJ/Gi
21+FgXhZRHDozDKkX6LZ5r+KKrUI5IRKXH8yuVTWgL8NJhvYQeG1lJ+NYwiIDDbO1b
22mfR7HJOSM1wY6OmWl+ac72PUdN5h7q6HVIcIFlMVwPQ+Xz5DgDLmh1iglcq8/i1/
23wJRLVN8Wg/Ava3o8PwE7Lp0flfrURTuZqP3RNa+YRy6xCl7kokx2BxygzM/zBHhJ
247EMkJxPVEi28+51iL2COtXgbL3HWPUubM8fUwbv5ftuEE4DhXMRI1o2Tv9WoWcEx
259yM=
26-----END CERTIFICATE-----
27-----BEGIN CERTIFICATE-----
28MIIDOjCCAiKgAwIBAgIJAIZjiC92oa9dMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
29BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
30MTAzWhcNMzAwNzEyMTgyMTAzWjAqMSgwJgYDVQQDDB9MaWJyZVNTTCBUZXN0IElu
31dGVybWVkaWF0ZSBDQSAyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
321bCCdCJL6+v+rzJaS6nrDfElt4ktbb4zrKvIIaB0TwImSbiHxrSYiiylXCTZbehJ
33iXogu41LOMMrwTyXvt8yNs2K0JAE6Rk7cO0Goq5GmT7Dgbd6kfdBUXgdldOA0xel
34z/dJ9ZH4jgyQK1x5zdr+FM63FYKaEguLiLa74DWWG7xBczmmy7C7pn+4VXaIpeIh
35xVgF86F4yRiOCtoEFv5R4ohsysW+bnEJpF/E4/FcAAMP0OevGQZrZJhkVx5Zhrp5
36Xru4PUt4jn7TGBD3XlNPbGt3YvCM0fos70/+YEn9/7mue8l8w/ccZCNkHlc6rhoV
37VhjP+RYJZzeK7jk5viqZ+QIDAQABo2MwYTAdBgNVHQ4EFgQUxwNMYQTwWSAmTGX9
38yKxo/zsaciIwHwYDVR0jBBgwFoAUZ48rls6iM5jYKv5fad8uGlZBR4YwDwYDVR0T
39AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggEBAAHt
40H9FaBdHkCIIBaG3L3eQms3roh5AElb1PlOD8q3gm1WL5P6ZoC73zXjYJeIu65mAt
41+/KSLu5mhj8CO8VQBWVxMSwTOpVadT9XR+nb23NwbhedQ88ef6df9dy9oN/gJx+f
42lzdH3sFkuNkirTYKd6V/eHwXP2a+vxc+bJNmafeE/2BF+g6CDvi38bO3gBAfNg0x
43U6pSiLaWRgljH4klWlzL6G+JiFCZug5aacZnvMtQrqfGDDblAKPYG/xe4ARQIPhz
446D/aY29gNIhYARDG6E1fD54/PT1YxZGj/Y8mskppoxiNVvEPoxfqwzvlyqL1olh6
45vKcYy30m72E6Esrbev8=
46-----END CERTIFICATE-----
47-----BEGIN CERTIFICATE-----
48MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9cMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
49BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwM1oXDTMw
50MDcxMjE4MjEwM1owKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
51dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMFY/+WkYwrm
52HyQHqjzssWWvPY69ryOukIz8vSxIsKBvC8lWVBBYf+P7KEErr8XWsCJWId7b3ETX
530FKxFvthOqZ7Xgotp7b0Rt5Nl0nJsymPMCWIdiFAli9d9T4rY6DTg0ulsvnZKMg1
54bjW5yZef8TlUsO5jyyPL7ePlVa18/Tg73lmoKwbAfmQwL8yEjI3a9gjDzBs6J0Nx
55GwSUz0XtIMJ2OuDGV1f3yX1eeOOFOLSPKK31oCMVN/U2m64pU0TYsqp52KPP2OKQ
56NADWOUY8hH/iMKcwErB8hJIP5uNcMZcNL/3Fx5fMzB0dYY4qMXWbhNamhrMwaA76
57nDqV03c4aOsCAwEAAaNjMGEwHQYDVR0OBBYEFGePK5bOojOY2Cr+X2nfLhpWQUeG
58MB8GA1UdIwQYMBaAFJb654HjhVrD+wQKAvmil5cqWOAGMA8GA1UdEwEB/wQFMAMB
59Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQChewj1lVVYl7OR
60nqZh4vsKT6/da5ppfxUuTKeaBFumPjxmQEM7swOGCAFL8VIYP7Px4NlC4DihNHox
61M7y1H63ZBI12vePjLOcqxjPXK59v3ECZOz7RjT18QoIJmAB8KeDI/hLJf83PGD4e
62MauFsx3XCxJkHLU22v8k5Sn3n0pWvPCQ+uA8qF+MDhNZq6BuTFyAUHwWZvJGK9PX
63Tj/fh9LskZV3HsNLM1WF0jVMOtxV6nTI2e5RlqqOSlrlyZr/lmXy13r+wVpuyUmR
64R1c/av6G7SGa+F9YbKzLYZx/80kO7AO4RWG5AgjgRcCz+fWyE3W0Yaa8LQjXspGo
65KO4leRha
66-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/5f/roots.pem b/src/regress/lib/libcrypto/certs/5f/roots.pem
new file mode 100644
index 0000000000..9ac396e54e
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/5f/roots.pem
@@ -0,0 +1,42 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJAN+6GAMUhGc2MA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwM1oXDTMw
6MDcxMjE4MjEwM1owIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC2SETQaiYXodTAMu/JV6Jq
8HNsODaA7IyKpHIIuNLcss2mSMvZDMomxjqJNPOQ99Qt6SMfYMiVZxzJ4/CxdIxQX
9wvTr5hz9sfBvG4V9ehd1LhoA69Zxuq/rgagRu7iMYZIlzkw+0oem/aNIGjh+4/W2
102Kv4LTPxiL3F7WPaom2/2jRZS/2xWd63JdfeAb2fVwqqiMHhTbKGRSA8xNZ4AFYh
11mpuVz6gcJ36Z2Ay96igyfLjuw9a6KmoG+0yk7vak4yN22t/ikM7t6COTuPbj+WRP
12KCJKlHv7g+sTYw5cllFT/OdrYqz/0VgvUaDGPDaH6UmmUWBzq6sEffMOa7TSUIr7
13AgMBAAGjYzBhMB0GA1UdDgQWBBSW+ueB44Vaw/sECgL5opeXKljgBjAfBgNVHSME
14GDAWgBSW+ueB44Vaw/sECgL5opeXKljgBjAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAREUFeS3072m7mI9FXAgAYegH
16VppdiU1B9r2wFk9n77MY2y+BH7Gugw8BiW3Z8+23U21L+Tp4BrbEtSdIDujd9xA5
17fwa7Z2fPLvC0VrpEeLD6Nt7NLGe3T859F5G8Q2qBSG39Ix+T11ZH0SCa3Q6oSgq1
18jcXUUndmx5UUjcBVwpvQ5vIQjCu8Z5ECqMceirE5DXx9S1mPjApZlsMft7Bo3a5T
196o1H9ewD7aFFqbrhBJpw8fQMZFQckjmUEPkozIrDBuLsfeJG4NFOTWNxizjbgjuk
20Zb+EDW7w5Ic0nAh3VY/3wzwqN2Oy4o2UIRDyT8+F7XVRa2X7A7XV6TSmwivZbQ==
21-----END CERTIFICATE-----
22subject= CN = LibreSSL Test Root CA 2
23issuer= CN = LibreSSL Test Root CA 2
24-----BEGIN CERTIFICATE-----
25MIIDKjCCAhKgAwIBAgIJANdPNr3tzWx0MA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
26BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwNFoXDTMw
27MDcxMjE4MjEwNFowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDIw
28ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDI8uK3Psn8z9GnvLLQXowb
29nvxbOu/ma3WjeyxOrt/RDU7I46iiFK+Oy3pTYWjhE9i1LJzpcobcTVyDTnQtuKzE
30V73/ehmPTK/moA/SdUvL8vvIUX/o/09SZLNJYkZR8PThuIELLUfoIMsJ73SR7EfN
31+FcW4ioUtfdmzR8tin4rZfP4vZ5BJ68MDgo7zowsv7fYVJhik2eMfVCDxIGZkCyu
32eXJzUS/OcE12AIkwt0S5Mb6339/fmqunhMGoaDYI/0x6yzktIbiB6ZW+U4hl4l8e
33TthBuoKwI5JqWahHD9ZDsYPRVl8E1BkG2XDzb63H15tw/RlcTEokw903nvP525kR
34AgMBAAGjYzBhMB0GA1UdDgQWBBS8MlD3TtT6jjmDTDca6ieta42ftTAfBgNVHSME
35GDAWgBS8MlD3TtT6jjmDTDca6ieta42ftTAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
36DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAgC0I59g4PM7t/vp/QwPiQEEI
37MAsam82+rlac9HVNiybHxQl/Vy+Ve7CASqSBFIa1xgHbO925qO0psnyxYnJvofi3
38VW4WlN8yaeAyDIY3N/ZZldu3vhXL5Cvir301N1Y+CCoUf6notpsLO9YMlLqcO5Qa
39vxzQQEHSxOpzhMKZbdb8sILqGvt4JL469FbtpI8Iylf3WvC5qA5na/aKjTZLW/Ep
40817p6f9PMJuEIDoZJQO8LB6Cs7OT7CbMG1Sbtpj+HHB0ep1PFC5GTqZpOv6uqDp6
410Soz5JXbbTg0+7OYnWIkjqBYJ/frt5VTNnB0mjN2iJFIjXw9fS+5r0tGwMRjGQ==
42-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/5g/bundle.pem b/src/regress/lib/libcrypto/certs/5g/bundle.pem
new file mode 100644
index 0000000000..67e8688862
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/5g/bundle.pem
@@ -0,0 +1,88 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 2
3subject= CN = LibreSSL Test Intermediate CA 2
4issuer= CN = LibreSSL Test Root CA 2
5subject= CN = LibreSSL Test Intermediate CA 2
6issuer= CN = LibreSSL Test Intermediate CA 1
7subject= CN = LibreSSL Test Intermediate CA 1
8issuer= CN = LibreSSL Test Root CA 1
9-----BEGIN CERTIFICATE-----
10MIIDLjCCAhagAwIBAgIJAIZjiC92oa9fMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
11BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDIwHhcNMjAwNzE0MTgy
12MTA0WhcNMzAwNzEyMTgyMTA0WjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
13cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwqXhw2gULhNs
14Z7sBIqh/TciOMIFpsWU6JDES663BQ7BhVD3uHwsBRGV80+dNz8zi070t+5eoX00O
159GWwIuC4wjhjM0VVid+NJgRdDvjHBpnbdtY8DFh4X7wsXqyHb5Zmbda+f81JiXEF
16m1E8FtNnw5wdhzaZdN2quZsIDq4cnldVoolFbKDuhRBgYXujv64Yh4SkPEzOGiUv
17YQW7kkSVepwchwy2baGYEsZSNQhPasuCCGsjRi1piYJ0mx3FpSO/gtcTwF2DsLtw
18rAFms/HtHIuGOgPROfVllemTTnj+OqutNoYFbpw5qPvDk1b8ciSJOXuzu42hDmkH
19smqlTIz36wIDAQABo2AwXjAdBgNVHQ4EFgQU0lC+eXXjL7i1nIpo28/iBVuyqM4w
20HwYDVR0jBBgwFoAUxwNMYQTwWSAmTGX9yKxo/zsaciIwDAYDVR0TAQH/BAIwADAO
21BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAIq1+kpJ23wZNmttl1dY
22vecnxNYQbztAfblXLofzrNWcjcuFjMA+r6r6ACninGUmaqdzwAWE9kTg2MvEJ/Gi
23+FgXhZRHDozDKkX6LZ5r+KKrUI5IRKXH8yuVTWgL8NJhvYQeG1lJ+NYwiIDDbO1b
24mfR7HJOSM1wY6OmWl+ac72PUdN5h7q6HVIcIFlMVwPQ+Xz5DgDLmh1iglcq8/i1/
25wJRLVN8Wg/Ava3o8PwE7Lp0flfrURTuZqP3RNa+YRy6xCl7kokx2BxygzM/zBHhJ
267EMkJxPVEi28+51iL2COtXgbL3HWPUubM8fUwbv5ftuEE4DhXMRI1o2Tv9WoWcEx
279yM=
28-----END CERTIFICATE-----
29-----BEGIN CERTIFICATE-----
30MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9eMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
31BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwNFoXDTMw
32MDcxMjE4MjEwNFowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
33dGUgQ0EgMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANWwgnQiS+vr
34/q8yWkup6w3xJbeJLW2+M6yryCGgdE8CJkm4h8a0mIospVwk2W3oSYl6ILuNSzjD
35K8E8l77fMjbNitCQBOkZO3DtBqKuRpk+w4G3epH3QVF4HZXTgNMXpc/3SfWR+I4M
36kCtcec3a/hTOtxWCmhILi4i2u+A1lhu8QXM5psuwu6Z/uFV2iKXiIcVYBfOheMkY
37jgraBBb+UeKIbMrFvm5xCaRfxOPxXAADD9DnrxkGa2SYZFceWYa6eV67uD1LeI5+
380xgQ915TT2xrd2LwjNH6LO9P/mBJ/f+5rnvJfMP3HGQjZB5XOq4aFVYYz/kWCWc3
39iu45Ob4qmfkCAwEAAaNjMGEwHQYDVR0OBBYEFMcDTGEE8FkgJkxl/cisaP87GnIi
40MB8GA1UdIwQYMBaAFLwyUPdO1PqOOYNMNxrqJ61rjZ+1MA8GA1UdEwEB/wQFMAMB
41Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQAJuKJAJeVbo1dg
42YojKwWikaIedSVHgzrGY360EIb31oO5Jb+WECw+9x6k8Q3SmRvuRLHFMbcIK/dqc
43qgeqlMh5pePsyaomwLAIz2n2OMRzjW0B0evENUvuqunC1T4Bp1RGTMdiHt46EScy
4479XP3tw/BdCYO5kPYAcBJ4qI0Mf1ofPcuBFufv53UGZ1UVytoKIlGfgcoWmeR9+p
45ZeE7F6bpzC9OE5589ytwCUh61rruDKKK38B4rUaITKKQiyCfH1cilz+HEeyal1vx
46mh2BfMVYYJQowCy8oIcJrNeq9SKb2naPV/fMEGrBbnPrkz/GFsYCYWW/vBVL2XSf
47z3eka+T2
48-----END CERTIFICATE-----
49-----BEGIN CERTIFICATE-----
50MIIDOjCCAiKgAwIBAgIJAIZjiC92oa9dMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
51BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
52MTAzWhcNMzAwNzEyMTgyMTAzWjAqMSgwJgYDVQQDDB9MaWJyZVNTTCBUZXN0IElu
53dGVybWVkaWF0ZSBDQSAyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
541bCCdCJL6+v+rzJaS6nrDfElt4ktbb4zrKvIIaB0TwImSbiHxrSYiiylXCTZbehJ
55iXogu41LOMMrwTyXvt8yNs2K0JAE6Rk7cO0Goq5GmT7Dgbd6kfdBUXgdldOA0xel
56z/dJ9ZH4jgyQK1x5zdr+FM63FYKaEguLiLa74DWWG7xBczmmy7C7pn+4VXaIpeIh
57xVgF86F4yRiOCtoEFv5R4ohsysW+bnEJpF/E4/FcAAMP0OevGQZrZJhkVx5Zhrp5
58Xru4PUt4jn7TGBD3XlNPbGt3YvCM0fos70/+YEn9/7mue8l8w/ccZCNkHlc6rhoV
59VhjP+RYJZzeK7jk5viqZ+QIDAQABo2MwYTAdBgNVHQ4EFgQUxwNMYQTwWSAmTGX9
60yKxo/zsaciIwHwYDVR0jBBgwFoAUZ48rls6iM5jYKv5fad8uGlZBR4YwDwYDVR0T
61AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggEBAAHt
62H9FaBdHkCIIBaG3L3eQms3roh5AElb1PlOD8q3gm1WL5P6ZoC73zXjYJeIu65mAt
63+/KSLu5mhj8CO8VQBWVxMSwTOpVadT9XR+nb23NwbhedQ88ef6df9dy9oN/gJx+f
64lzdH3sFkuNkirTYKd6V/eHwXP2a+vxc+bJNmafeE/2BF+g6CDvi38bO3gBAfNg0x
65U6pSiLaWRgljH4klWlzL6G+JiFCZug5aacZnvMtQrqfGDDblAKPYG/xe4ARQIPhz
666D/aY29gNIhYARDG6E1fD54/PT1YxZGj/Y8mskppoxiNVvEPoxfqwzvlyqL1olh6
67vKcYy30m72E6Esrbev8=
68-----END CERTIFICATE-----
69-----BEGIN CERTIFICATE-----
70MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9cMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
71BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwM1oXDTMw
72MDcxMjE4MjEwM1owKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
73dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMFY/+WkYwrm
74HyQHqjzssWWvPY69ryOukIz8vSxIsKBvC8lWVBBYf+P7KEErr8XWsCJWId7b3ETX
750FKxFvthOqZ7Xgotp7b0Rt5Nl0nJsymPMCWIdiFAli9d9T4rY6DTg0ulsvnZKMg1
76bjW5yZef8TlUsO5jyyPL7ePlVa18/Tg73lmoKwbAfmQwL8yEjI3a9gjDzBs6J0Nx
77GwSUz0XtIMJ2OuDGV1f3yX1eeOOFOLSPKK31oCMVN/U2m64pU0TYsqp52KPP2OKQ
78NADWOUY8hH/iMKcwErB8hJIP5uNcMZcNL/3Fx5fMzB0dYY4qMXWbhNamhrMwaA76
79nDqV03c4aOsCAwEAAaNjMGEwHQYDVR0OBBYEFGePK5bOojOY2Cr+X2nfLhpWQUeG
80MB8GA1UdIwQYMBaAFJb654HjhVrD+wQKAvmil5cqWOAGMA8GA1UdEwEB/wQFMAMB
81Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQChewj1lVVYl7OR
82nqZh4vsKT6/da5ppfxUuTKeaBFumPjxmQEM7swOGCAFL8VIYP7Px4NlC4DihNHox
83M7y1H63ZBI12vePjLOcqxjPXK59v3ECZOz7RjT18QoIJmAB8KeDI/hLJf83PGD4e
84MauFsx3XCxJkHLU22v8k5Sn3n0pWvPCQ+uA8qF+MDhNZq6BuTFyAUHwWZvJGK9PX
85Tj/fh9LskZV3HsNLM1WF0jVMOtxV6nTI2e5RlqqOSlrlyZr/lmXy13r+wVpuyUmR
86R1c/av6G7SGa+F9YbKzLYZx/80kO7AO4RWG5AgjgRcCz+fWyE3W0Yaa8LQjXspGo
87KO4leRha
88-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/5g/roots.pem b/src/regress/lib/libcrypto/certs/5g/roots.pem
new file mode 100644
index 0000000000..9ac396e54e
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/5g/roots.pem
@@ -0,0 +1,42 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJAN+6GAMUhGc2MA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwM1oXDTMw
6MDcxMjE4MjEwM1owIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC2SETQaiYXodTAMu/JV6Jq
8HNsODaA7IyKpHIIuNLcss2mSMvZDMomxjqJNPOQ99Qt6SMfYMiVZxzJ4/CxdIxQX
9wvTr5hz9sfBvG4V9ehd1LhoA69Zxuq/rgagRu7iMYZIlzkw+0oem/aNIGjh+4/W2
102Kv4LTPxiL3F7WPaom2/2jRZS/2xWd63JdfeAb2fVwqqiMHhTbKGRSA8xNZ4AFYh
11mpuVz6gcJ36Z2Ay96igyfLjuw9a6KmoG+0yk7vak4yN22t/ikM7t6COTuPbj+WRP
12KCJKlHv7g+sTYw5cllFT/OdrYqz/0VgvUaDGPDaH6UmmUWBzq6sEffMOa7TSUIr7
13AgMBAAGjYzBhMB0GA1UdDgQWBBSW+ueB44Vaw/sECgL5opeXKljgBjAfBgNVHSME
14GDAWgBSW+ueB44Vaw/sECgL5opeXKljgBjAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAREUFeS3072m7mI9FXAgAYegH
16VppdiU1B9r2wFk9n77MY2y+BH7Gugw8BiW3Z8+23U21L+Tp4BrbEtSdIDujd9xA5
17fwa7Z2fPLvC0VrpEeLD6Nt7NLGe3T859F5G8Q2qBSG39Ix+T11ZH0SCa3Q6oSgq1
18jcXUUndmx5UUjcBVwpvQ5vIQjCu8Z5ECqMceirE5DXx9S1mPjApZlsMft7Bo3a5T
196o1H9ewD7aFFqbrhBJpw8fQMZFQckjmUEPkozIrDBuLsfeJG4NFOTWNxizjbgjuk
20Zb+EDW7w5Ic0nAh3VY/3wzwqN2Oy4o2UIRDyT8+F7XVRa2X7A7XV6TSmwivZbQ==
21-----END CERTIFICATE-----
22subject= CN = LibreSSL Test Root CA 2
23issuer= CN = LibreSSL Test Root CA 2
24-----BEGIN CERTIFICATE-----
25MIIDKjCCAhKgAwIBAgIJANdPNr3tzWx0MA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
26BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwNFoXDTMw
27MDcxMjE4MjEwNFowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDIw
28ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDI8uK3Psn8z9GnvLLQXowb
29nvxbOu/ma3WjeyxOrt/RDU7I46iiFK+Oy3pTYWjhE9i1LJzpcobcTVyDTnQtuKzE
30V73/ehmPTK/moA/SdUvL8vvIUX/o/09SZLNJYkZR8PThuIELLUfoIMsJ73SR7EfN
31+FcW4ioUtfdmzR8tin4rZfP4vZ5BJ68MDgo7zowsv7fYVJhik2eMfVCDxIGZkCyu
32eXJzUS/OcE12AIkwt0S5Mb6339/fmqunhMGoaDYI/0x6yzktIbiB6ZW+U4hl4l8e
33TthBuoKwI5JqWahHD9ZDsYPRVl8E1BkG2XDzb63H15tw/RlcTEokw903nvP525kR
34AgMBAAGjYzBhMB0GA1UdDgQWBBS8MlD3TtT6jjmDTDca6ieta42ftTAfBgNVHSME
35GDAWgBS8MlD3TtT6jjmDTDca6ieta42ftTAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
36DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAgC0I59g4PM7t/vp/QwPiQEEI
37MAsam82+rlac9HVNiybHxQl/Vy+Ve7CASqSBFIa1xgHbO925qO0psnyxYnJvofi3
38VW4WlN8yaeAyDIY3N/ZZldu3vhXL5Cvir301N1Y+CCoUf6notpsLO9YMlLqcO5Qa
39vxzQQEHSxOpzhMKZbdb8sILqGvt4JL469FbtpI8Iylf3WvC5qA5na/aKjTZLW/Ep
40817p6f9PMJuEIDoZJQO8LB6Cs7OT7CbMG1Sbtpj+HHB0ep1PFC5GTqZpOv6uqDp6
410Soz5JXbbTg0+7OYnWIkjqBYJ/frt5VTNnB0mjN2iJFIjXw9fS+5r0tGwMRjGQ==
42-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/5h/bundle.pem b/src/regress/lib/libcrypto/certs/5h/bundle.pem
new file mode 100644
index 0000000000..67e8688862
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/5h/bundle.pem
@@ -0,0 +1,88 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 2
3subject= CN = LibreSSL Test Intermediate CA 2
4issuer= CN = LibreSSL Test Root CA 2
5subject= CN = LibreSSL Test Intermediate CA 2
6issuer= CN = LibreSSL Test Intermediate CA 1
7subject= CN = LibreSSL Test Intermediate CA 1
8issuer= CN = LibreSSL Test Root CA 1
9-----BEGIN CERTIFICATE-----
10MIIDLjCCAhagAwIBAgIJAIZjiC92oa9fMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
11BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDIwHhcNMjAwNzE0MTgy
12MTA0WhcNMzAwNzEyMTgyMTA0WjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
13cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwqXhw2gULhNs
14Z7sBIqh/TciOMIFpsWU6JDES663BQ7BhVD3uHwsBRGV80+dNz8zi070t+5eoX00O
159GWwIuC4wjhjM0VVid+NJgRdDvjHBpnbdtY8DFh4X7wsXqyHb5Zmbda+f81JiXEF
16m1E8FtNnw5wdhzaZdN2quZsIDq4cnldVoolFbKDuhRBgYXujv64Yh4SkPEzOGiUv
17YQW7kkSVepwchwy2baGYEsZSNQhPasuCCGsjRi1piYJ0mx3FpSO/gtcTwF2DsLtw
18rAFms/HtHIuGOgPROfVllemTTnj+OqutNoYFbpw5qPvDk1b8ciSJOXuzu42hDmkH
19smqlTIz36wIDAQABo2AwXjAdBgNVHQ4EFgQU0lC+eXXjL7i1nIpo28/iBVuyqM4w
20HwYDVR0jBBgwFoAUxwNMYQTwWSAmTGX9yKxo/zsaciIwDAYDVR0TAQH/BAIwADAO
21BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAIq1+kpJ23wZNmttl1dY
22vecnxNYQbztAfblXLofzrNWcjcuFjMA+r6r6ACninGUmaqdzwAWE9kTg2MvEJ/Gi
23+FgXhZRHDozDKkX6LZ5r+KKrUI5IRKXH8yuVTWgL8NJhvYQeG1lJ+NYwiIDDbO1b
24mfR7HJOSM1wY6OmWl+ac72PUdN5h7q6HVIcIFlMVwPQ+Xz5DgDLmh1iglcq8/i1/
25wJRLVN8Wg/Ava3o8PwE7Lp0flfrURTuZqP3RNa+YRy6xCl7kokx2BxygzM/zBHhJ
267EMkJxPVEi28+51iL2COtXgbL3HWPUubM8fUwbv5ftuEE4DhXMRI1o2Tv9WoWcEx
279yM=
28-----END CERTIFICATE-----
29-----BEGIN CERTIFICATE-----
30MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9eMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
31BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwNFoXDTMw
32MDcxMjE4MjEwNFowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
33dGUgQ0EgMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANWwgnQiS+vr
34/q8yWkup6w3xJbeJLW2+M6yryCGgdE8CJkm4h8a0mIospVwk2W3oSYl6ILuNSzjD
35K8E8l77fMjbNitCQBOkZO3DtBqKuRpk+w4G3epH3QVF4HZXTgNMXpc/3SfWR+I4M
36kCtcec3a/hTOtxWCmhILi4i2u+A1lhu8QXM5psuwu6Z/uFV2iKXiIcVYBfOheMkY
37jgraBBb+UeKIbMrFvm5xCaRfxOPxXAADD9DnrxkGa2SYZFceWYa6eV67uD1LeI5+
380xgQ915TT2xrd2LwjNH6LO9P/mBJ/f+5rnvJfMP3HGQjZB5XOq4aFVYYz/kWCWc3
39iu45Ob4qmfkCAwEAAaNjMGEwHQYDVR0OBBYEFMcDTGEE8FkgJkxl/cisaP87GnIi
40MB8GA1UdIwQYMBaAFLwyUPdO1PqOOYNMNxrqJ61rjZ+1MA8GA1UdEwEB/wQFMAMB
41Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQAJuKJAJeVbo1dg
42YojKwWikaIedSVHgzrGY360EIb31oO5Jb+WECw+9x6k8Q3SmRvuRLHFMbcIK/dqc
43qgeqlMh5pePsyaomwLAIz2n2OMRzjW0B0evENUvuqunC1T4Bp1RGTMdiHt46EScy
4479XP3tw/BdCYO5kPYAcBJ4qI0Mf1ofPcuBFufv53UGZ1UVytoKIlGfgcoWmeR9+p
45ZeE7F6bpzC9OE5589ytwCUh61rruDKKK38B4rUaITKKQiyCfH1cilz+HEeyal1vx
46mh2BfMVYYJQowCy8oIcJrNeq9SKb2naPV/fMEGrBbnPrkz/GFsYCYWW/vBVL2XSf
47z3eka+T2
48-----END CERTIFICATE-----
49-----BEGIN CERTIFICATE-----
50MIIDOjCCAiKgAwIBAgIJAIZjiC92oa9dMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
51BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
52MTAzWhcNMzAwNzEyMTgyMTAzWjAqMSgwJgYDVQQDDB9MaWJyZVNTTCBUZXN0IElu
53dGVybWVkaWF0ZSBDQSAyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
541bCCdCJL6+v+rzJaS6nrDfElt4ktbb4zrKvIIaB0TwImSbiHxrSYiiylXCTZbehJ
55iXogu41LOMMrwTyXvt8yNs2K0JAE6Rk7cO0Goq5GmT7Dgbd6kfdBUXgdldOA0xel
56z/dJ9ZH4jgyQK1x5zdr+FM63FYKaEguLiLa74DWWG7xBczmmy7C7pn+4VXaIpeIh
57xVgF86F4yRiOCtoEFv5R4ohsysW+bnEJpF/E4/FcAAMP0OevGQZrZJhkVx5Zhrp5
58Xru4PUt4jn7TGBD3XlNPbGt3YvCM0fos70/+YEn9/7mue8l8w/ccZCNkHlc6rhoV
59VhjP+RYJZzeK7jk5viqZ+QIDAQABo2MwYTAdBgNVHQ4EFgQUxwNMYQTwWSAmTGX9
60yKxo/zsaciIwHwYDVR0jBBgwFoAUZ48rls6iM5jYKv5fad8uGlZBR4YwDwYDVR0T
61AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggEBAAHt
62H9FaBdHkCIIBaG3L3eQms3roh5AElb1PlOD8q3gm1WL5P6ZoC73zXjYJeIu65mAt
63+/KSLu5mhj8CO8VQBWVxMSwTOpVadT9XR+nb23NwbhedQ88ef6df9dy9oN/gJx+f
64lzdH3sFkuNkirTYKd6V/eHwXP2a+vxc+bJNmafeE/2BF+g6CDvi38bO3gBAfNg0x
65U6pSiLaWRgljH4klWlzL6G+JiFCZug5aacZnvMtQrqfGDDblAKPYG/xe4ARQIPhz
666D/aY29gNIhYARDG6E1fD54/PT1YxZGj/Y8mskppoxiNVvEPoxfqwzvlyqL1olh6
67vKcYy30m72E6Esrbev8=
68-----END CERTIFICATE-----
69-----BEGIN CERTIFICATE-----
70MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9cMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
71BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwM1oXDTMw
72MDcxMjE4MjEwM1owKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
73dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMFY/+WkYwrm
74HyQHqjzssWWvPY69ryOukIz8vSxIsKBvC8lWVBBYf+P7KEErr8XWsCJWId7b3ETX
750FKxFvthOqZ7Xgotp7b0Rt5Nl0nJsymPMCWIdiFAli9d9T4rY6DTg0ulsvnZKMg1
76bjW5yZef8TlUsO5jyyPL7ePlVa18/Tg73lmoKwbAfmQwL8yEjI3a9gjDzBs6J0Nx
77GwSUz0XtIMJ2OuDGV1f3yX1eeOOFOLSPKK31oCMVN/U2m64pU0TYsqp52KPP2OKQ
78NADWOUY8hH/iMKcwErB8hJIP5uNcMZcNL/3Fx5fMzB0dYY4qMXWbhNamhrMwaA76
79nDqV03c4aOsCAwEAAaNjMGEwHQYDVR0OBBYEFGePK5bOojOY2Cr+X2nfLhpWQUeG
80MB8GA1UdIwQYMBaAFJb654HjhVrD+wQKAvmil5cqWOAGMA8GA1UdEwEB/wQFMAMB
81Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQChewj1lVVYl7OR
82nqZh4vsKT6/da5ppfxUuTKeaBFumPjxmQEM7swOGCAFL8VIYP7Px4NlC4DihNHox
83M7y1H63ZBI12vePjLOcqxjPXK59v3ECZOz7RjT18QoIJmAB8KeDI/hLJf83PGD4e
84MauFsx3XCxJkHLU22v8k5Sn3n0pWvPCQ+uA8qF+MDhNZq6BuTFyAUHwWZvJGK9PX
85Tj/fh9LskZV3HsNLM1WF0jVMOtxV6nTI2e5RlqqOSlrlyZr/lmXy13r+wVpuyUmR
86R1c/av6G7SGa+F9YbKzLYZx/80kO7AO4RWG5AgjgRcCz+fWyE3W0Yaa8LQjXspGo
87KO4leRha
88-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/5h/roots.pem b/src/regress/lib/libcrypto/certs/5h/roots.pem
new file mode 100644
index 0000000000..275ccb1e09
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/5h/roots.pem
@@ -0,0 +1,21 @@
1subject= CN = LibreSSL Test Root CA 2
2issuer= CN = LibreSSL Test Root CA 2
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJANdPNr3tzWx0MA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwNFoXDTMw
6MDcxMjE4MjEwNFowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDIw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDI8uK3Psn8z9GnvLLQXowb
8nvxbOu/ma3WjeyxOrt/RDU7I46iiFK+Oy3pTYWjhE9i1LJzpcobcTVyDTnQtuKzE
9V73/ehmPTK/moA/SdUvL8vvIUX/o/09SZLNJYkZR8PThuIELLUfoIMsJ73SR7EfN
10+FcW4ioUtfdmzR8tin4rZfP4vZ5BJ68MDgo7zowsv7fYVJhik2eMfVCDxIGZkCyu
11eXJzUS/OcE12AIkwt0S5Mb6339/fmqunhMGoaDYI/0x6yzktIbiB6ZW+U4hl4l8e
12TthBuoKwI5JqWahHD9ZDsYPRVl8E1BkG2XDzb63H15tw/RlcTEokw903nvP525kR
13AgMBAAGjYzBhMB0GA1UdDgQWBBS8MlD3TtT6jjmDTDca6ieta42ftTAfBgNVHSME
14GDAWgBS8MlD3TtT6jjmDTDca6ieta42ftTAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAgC0I59g4PM7t/vp/QwPiQEEI
16MAsam82+rlac9HVNiybHxQl/Vy+Ve7CASqSBFIa1xgHbO925qO0psnyxYnJvofi3
17VW4WlN8yaeAyDIY3N/ZZldu3vhXL5Cvir301N1Y+CCoUf6notpsLO9YMlLqcO5Qa
18vxzQQEHSxOpzhMKZbdb8sILqGvt4JL469FbtpI8Iylf3WvC5qA5na/aKjTZLW/Ep
19817p6f9PMJuEIDoZJQO8LB6Cs7OT7CbMG1Sbtpj+HHB0ep1PFC5GTqZpOv6uqDp6
200Soz5JXbbTg0+7OYnWIkjqBYJ/frt5VTNnB0mjN2iJFIjXw9fS+5r0tGwMRjGQ==
21-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/5i/bundle.pem b/src/regress/lib/libcrypto/certs/5i/bundle.pem
new file mode 100644
index 0000000000..67e8688862
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/5i/bundle.pem
@@ -0,0 +1,88 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 2
3subject= CN = LibreSSL Test Intermediate CA 2
4issuer= CN = LibreSSL Test Root CA 2
5subject= CN = LibreSSL Test Intermediate CA 2
6issuer= CN = LibreSSL Test Intermediate CA 1
7subject= CN = LibreSSL Test Intermediate CA 1
8issuer= CN = LibreSSL Test Root CA 1
9-----BEGIN CERTIFICATE-----
10MIIDLjCCAhagAwIBAgIJAIZjiC92oa9fMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
11BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDIwHhcNMjAwNzE0MTgy
12MTA0WhcNMzAwNzEyMTgyMTA0WjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
13cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwqXhw2gULhNs
14Z7sBIqh/TciOMIFpsWU6JDES663BQ7BhVD3uHwsBRGV80+dNz8zi070t+5eoX00O
159GWwIuC4wjhjM0VVid+NJgRdDvjHBpnbdtY8DFh4X7wsXqyHb5Zmbda+f81JiXEF
16m1E8FtNnw5wdhzaZdN2quZsIDq4cnldVoolFbKDuhRBgYXujv64Yh4SkPEzOGiUv
17YQW7kkSVepwchwy2baGYEsZSNQhPasuCCGsjRi1piYJ0mx3FpSO/gtcTwF2DsLtw
18rAFms/HtHIuGOgPROfVllemTTnj+OqutNoYFbpw5qPvDk1b8ciSJOXuzu42hDmkH
19smqlTIz36wIDAQABo2AwXjAdBgNVHQ4EFgQU0lC+eXXjL7i1nIpo28/iBVuyqM4w
20HwYDVR0jBBgwFoAUxwNMYQTwWSAmTGX9yKxo/zsaciIwDAYDVR0TAQH/BAIwADAO
21BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAIq1+kpJ23wZNmttl1dY
22vecnxNYQbztAfblXLofzrNWcjcuFjMA+r6r6ACninGUmaqdzwAWE9kTg2MvEJ/Gi
23+FgXhZRHDozDKkX6LZ5r+KKrUI5IRKXH8yuVTWgL8NJhvYQeG1lJ+NYwiIDDbO1b
24mfR7HJOSM1wY6OmWl+ac72PUdN5h7q6HVIcIFlMVwPQ+Xz5DgDLmh1iglcq8/i1/
25wJRLVN8Wg/Ava3o8PwE7Lp0flfrURTuZqP3RNa+YRy6xCl7kokx2BxygzM/zBHhJ
267EMkJxPVEi28+51iL2COtXgbL3HWPUubM8fUwbv5ftuEE4DhXMRI1o2Tv9WoWcEx
279yM=
28-----END CERTIFICATE-----
29-----BEGIN CERTIFICATE-----
30MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9eMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
31BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwNFoXDTMw
32MDcxMjE4MjEwNFowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
33dGUgQ0EgMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANWwgnQiS+vr
34/q8yWkup6w3xJbeJLW2+M6yryCGgdE8CJkm4h8a0mIospVwk2W3oSYl6ILuNSzjD
35K8E8l77fMjbNitCQBOkZO3DtBqKuRpk+w4G3epH3QVF4HZXTgNMXpc/3SfWR+I4M
36kCtcec3a/hTOtxWCmhILi4i2u+A1lhu8QXM5psuwu6Z/uFV2iKXiIcVYBfOheMkY
37jgraBBb+UeKIbMrFvm5xCaRfxOPxXAADD9DnrxkGa2SYZFceWYa6eV67uD1LeI5+
380xgQ915TT2xrd2LwjNH6LO9P/mBJ/f+5rnvJfMP3HGQjZB5XOq4aFVYYz/kWCWc3
39iu45Ob4qmfkCAwEAAaNjMGEwHQYDVR0OBBYEFMcDTGEE8FkgJkxl/cisaP87GnIi
40MB8GA1UdIwQYMBaAFLwyUPdO1PqOOYNMNxrqJ61rjZ+1MA8GA1UdEwEB/wQFMAMB
41Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQAJuKJAJeVbo1dg
42YojKwWikaIedSVHgzrGY360EIb31oO5Jb+WECw+9x6k8Q3SmRvuRLHFMbcIK/dqc
43qgeqlMh5pePsyaomwLAIz2n2OMRzjW0B0evENUvuqunC1T4Bp1RGTMdiHt46EScy
4479XP3tw/BdCYO5kPYAcBJ4qI0Mf1ofPcuBFufv53UGZ1UVytoKIlGfgcoWmeR9+p
45ZeE7F6bpzC9OE5589ytwCUh61rruDKKK38B4rUaITKKQiyCfH1cilz+HEeyal1vx
46mh2BfMVYYJQowCy8oIcJrNeq9SKb2naPV/fMEGrBbnPrkz/GFsYCYWW/vBVL2XSf
47z3eka+T2
48-----END CERTIFICATE-----
49-----BEGIN CERTIFICATE-----
50MIIDOjCCAiKgAwIBAgIJAIZjiC92oa9dMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
51BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
52MTAzWhcNMzAwNzEyMTgyMTAzWjAqMSgwJgYDVQQDDB9MaWJyZVNTTCBUZXN0IElu
53dGVybWVkaWF0ZSBDQSAyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
541bCCdCJL6+v+rzJaS6nrDfElt4ktbb4zrKvIIaB0TwImSbiHxrSYiiylXCTZbehJ
55iXogu41LOMMrwTyXvt8yNs2K0JAE6Rk7cO0Goq5GmT7Dgbd6kfdBUXgdldOA0xel
56z/dJ9ZH4jgyQK1x5zdr+FM63FYKaEguLiLa74DWWG7xBczmmy7C7pn+4VXaIpeIh
57xVgF86F4yRiOCtoEFv5R4ohsysW+bnEJpF/E4/FcAAMP0OevGQZrZJhkVx5Zhrp5
58Xru4PUt4jn7TGBD3XlNPbGt3YvCM0fos70/+YEn9/7mue8l8w/ccZCNkHlc6rhoV
59VhjP+RYJZzeK7jk5viqZ+QIDAQABo2MwYTAdBgNVHQ4EFgQUxwNMYQTwWSAmTGX9
60yKxo/zsaciIwHwYDVR0jBBgwFoAUZ48rls6iM5jYKv5fad8uGlZBR4YwDwYDVR0T
61AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggEBAAHt
62H9FaBdHkCIIBaG3L3eQms3roh5AElb1PlOD8q3gm1WL5P6ZoC73zXjYJeIu65mAt
63+/KSLu5mhj8CO8VQBWVxMSwTOpVadT9XR+nb23NwbhedQ88ef6df9dy9oN/gJx+f
64lzdH3sFkuNkirTYKd6V/eHwXP2a+vxc+bJNmafeE/2BF+g6CDvi38bO3gBAfNg0x
65U6pSiLaWRgljH4klWlzL6G+JiFCZug5aacZnvMtQrqfGDDblAKPYG/xe4ARQIPhz
666D/aY29gNIhYARDG6E1fD54/PT1YxZGj/Y8mskppoxiNVvEPoxfqwzvlyqL1olh6
67vKcYy30m72E6Esrbev8=
68-----END CERTIFICATE-----
69-----BEGIN CERTIFICATE-----
70MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9cMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
71BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwM1oXDTMw
72MDcxMjE4MjEwM1owKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
73dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMFY/+WkYwrm
74HyQHqjzssWWvPY69ryOukIz8vSxIsKBvC8lWVBBYf+P7KEErr8XWsCJWId7b3ETX
750FKxFvthOqZ7Xgotp7b0Rt5Nl0nJsymPMCWIdiFAli9d9T4rY6DTg0ulsvnZKMg1
76bjW5yZef8TlUsO5jyyPL7ePlVa18/Tg73lmoKwbAfmQwL8yEjI3a9gjDzBs6J0Nx
77GwSUz0XtIMJ2OuDGV1f3yX1eeOOFOLSPKK31oCMVN/U2m64pU0TYsqp52KPP2OKQ
78NADWOUY8hH/iMKcwErB8hJIP5uNcMZcNL/3Fx5fMzB0dYY4qMXWbhNamhrMwaA76
79nDqV03c4aOsCAwEAAaNjMGEwHQYDVR0OBBYEFGePK5bOojOY2Cr+X2nfLhpWQUeG
80MB8GA1UdIwQYMBaAFJb654HjhVrD+wQKAvmil5cqWOAGMA8GA1UdEwEB/wQFMAMB
81Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQChewj1lVVYl7OR
82nqZh4vsKT6/da5ppfxUuTKeaBFumPjxmQEM7swOGCAFL8VIYP7Px4NlC4DihNHox
83M7y1H63ZBI12vePjLOcqxjPXK59v3ECZOz7RjT18QoIJmAB8KeDI/hLJf83PGD4e
84MauFsx3XCxJkHLU22v8k5Sn3n0pWvPCQ+uA8qF+MDhNZq6BuTFyAUHwWZvJGK9PX
85Tj/fh9LskZV3HsNLM1WF0jVMOtxV6nTI2e5RlqqOSlrlyZr/lmXy13r+wVpuyUmR
86R1c/av6G7SGa+F9YbKzLYZx/80kO7AO4RWG5AgjgRcCz+fWyE3W0Yaa8LQjXspGo
87KO4leRha
88-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/5i/roots.pem b/src/regress/lib/libcrypto/certs/5i/roots.pem
new file mode 100644
index 0000000000..074966ef6e
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/5i/roots.pem
@@ -0,0 +1,21 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJAN+6GAMUhGc2MA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwM1oXDTMw
6MDcxMjE4MjEwM1owIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC2SETQaiYXodTAMu/JV6Jq
8HNsODaA7IyKpHIIuNLcss2mSMvZDMomxjqJNPOQ99Qt6SMfYMiVZxzJ4/CxdIxQX
9wvTr5hz9sfBvG4V9ehd1LhoA69Zxuq/rgagRu7iMYZIlzkw+0oem/aNIGjh+4/W2
102Kv4LTPxiL3F7WPaom2/2jRZS/2xWd63JdfeAb2fVwqqiMHhTbKGRSA8xNZ4AFYh
11mpuVz6gcJ36Z2Ay96igyfLjuw9a6KmoG+0yk7vak4yN22t/ikM7t6COTuPbj+WRP
12KCJKlHv7g+sTYw5cllFT/OdrYqz/0VgvUaDGPDaH6UmmUWBzq6sEffMOa7TSUIr7
13AgMBAAGjYzBhMB0GA1UdDgQWBBSW+ueB44Vaw/sECgL5opeXKljgBjAfBgNVHSME
14GDAWgBSW+ueB44Vaw/sECgL5opeXKljgBjAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAREUFeS3072m7mI9FXAgAYegH
16VppdiU1B9r2wFk9n77MY2y+BH7Gugw8BiW3Z8+23U21L+Tp4BrbEtSdIDujd9xA5
17fwa7Z2fPLvC0VrpEeLD6Nt7NLGe3T859F5G8Q2qBSG39Ix+T11ZH0SCa3Q6oSgq1
18jcXUUndmx5UUjcBVwpvQ5vIQjCu8Z5ECqMceirE5DXx9S1mPjApZlsMft7Bo3a5T
196o1H9ewD7aFFqbrhBJpw8fQMZFQckjmUEPkozIrDBuLsfeJG4NFOTWNxizjbgjuk
20Zb+EDW7w5Ic0nAh3VY/3wzwqN2Oy4o2UIRDyT8+F7XVRa2X7A7XV6TSmwivZbQ==
21-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/6a/bundle.pem b/src/regress/lib/libcrypto/certs/6a/bundle.pem
new file mode 100644
index 0000000000..206197ecf4
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/6a/bundle.pem
@@ -0,0 +1,88 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 2
3subject= CN = LibreSSL Test Intermediate CA 2
4issuer= CN = LibreSSL Test Intermediate CA 1
5subject= CN = LibreSSL Test Intermediate CA 2
6issuer= CN = LibreSSL Test Root CA 2
7subject= CN = LibreSSL Test Intermediate CA 1
8issuer= CN = LibreSSL Test Root CA 1
9-----BEGIN CERTIFICATE-----
10MIIDLjCCAhagAwIBAgIJAIZjiC92oa9jMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
11BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDIwHhcNMjAwNzE0MTgy
12MTA3WhcNMzAwNzEyMTgyMTA3WjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
13cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwSs82Ct0Rn5o
14RPTz/CAgY4rU1/J681+4b1jma1nNogoMP4X44XAfk9rtpJbiA5RJOm+rp9zCJz98
15d/wENBBXaDTfglQIV9S/QMse07XQIelM4wrDXF+qVfYHXju2frMGR1PhXPf2u5sz
16aAwH0CR+PcOssVZ+/EaBf6HUNv7YBUKa5/t2gUAWffMXr7pOc0dz1p1CqMyrPpgC
17oYnJ7z04sG5k+cEs3hnc8WOAijcfs83PnUz1Kt3EN3lDTqyisHo7lKkkfZJAzUyZ
18sxWfPte7OSKCcntJKFB66VmsAtF4pQkOVfl+DZpMnyEQmLuQC/IxKzRxMn1nsVBw
19WsSmWGHIwQIDAQABo2AwXjAdBgNVHQ4EFgQUGz0CqreuH+lcWTiiQEvcAhpAHjow
20HwYDVR0jBBgwFoAUMqI7v6dDyYKNPtmWhhrBKoUlLXMwDAYDVR0TAQH/BAIwADAO
21BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAKKUZXhSSNmLbhGYtBtx
22wxhuPZcYRWC3Z7UNosnkgtt5rpNkBek6GpLRVr7+DzV2Zc94tRlzLr6Ot9ntkHDK
23HYawNjAQbDsHo3mu/kQw3DmOIJ0e8xWSx+ka9thp5a6riihNyJ7TAvi2S9EyI5JO
244wSokIfibE5kk6DbXE2iWuOl0+w/oDJYIg60Aeyr0N7r92xF8Ycmf3/bs00cC6fF
25PhjZ9uK6dennzuLoaF9yLpOBM3lKRxwPhs951xRwnP1a362g/8N9ASds9Z3uWXhk
26TS6rVxpcGVy10aFJOHwQNaaydh6dNi+5dlYU8CPtC7QMyurmNaPWM5n4IgQzPE6j
27Grs=
28-----END CERTIFICATE-----
29-----BEGIN CERTIFICATE-----
30MIIDOjCCAiKgAwIBAgIJAIZjiC92oa9hMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
31BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
32MTA3WhcNMzAwNzEyMTgyMTA3WjAqMSgwJgYDVQQDDB9MaWJyZVNTTCBUZXN0IElu
33dGVybWVkaWF0ZSBDQSAyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
34z8a1IcPC779qOAn2zE2KZCERL88ZrPrRwhc5dfKTimA2G3cf9JwWCshSLtiw/xJg
35mE7Sxj/w5Ga24dsFNsVU22QlB65OATE2Ci8tLZbq132jGAg27GLT3lbbJoxT1OF5
36uSakXyEAPs8Rk/2rH55cIJkfRv7W7Jaesu/pK0Lg/zptOshnvH71zjZMTi1Uz+NB
37ccUZUkhDD20x9lt36yrB+PLMl1fjpstIMDwdIuWrJZSqXsZIqrMeOllabl3GhlL3
387vEZ9J3/yOXmnQ7+LT1DyhCnkLsC9CORp7d58fAVEPB24MlTQThyFZQp/OHUgs1G
396m6UHMdu0iFCDMt7hXLVlQIDAQABo2MwYTAdBgNVHQ4EFgQUMqI7v6dDyYKNPtmW
40hhrBKoUlLXMwHwYDVR0jBBgwFoAUoKIWYd6h+5e84ykf5CCZKjSw1/swDwYDVR0T
41AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggEBAIPP
429KzMlph6tpdLSb3hbbvpUMF1xb45dSpD9ZGrzqnJeLZeeUhINeIPS7BpTntEUp+X
43PJhdZkM520xF5vA5Jr4smvniyyhXPBKWvOs39tG8PfkQe2C+B8HPaNurBldaLhbt
44eFfa4L6aEiZPq3MUHz4zY1uKNLyD8+fOFx3xGcHwmhW7AHPc0ICR8CDTjh5Ngiz0
45zwTklkR7GF2qMCohf7jdRpifXq/aT9gn0BCRKFPth5Kvh21qTV9kVBTW+FWRMnGR
46BnUhNlWHFZ3D4K36RGCRbxX+5EU8cV0QJ7CklgkWDwqsbeUR2Z9cKpmJ7jDNqBz3
47pwUpMb35cBltk4S7tYI=
48-----END CERTIFICATE-----
49-----BEGIN CERTIFICATE-----
50MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9iMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
51BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwN1oXDTMw
52MDcxMjE4MjEwN1owKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
53dGUgQ0EgMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM/GtSHDwu+/
54ajgJ9sxNimQhES/PGaz60cIXOXXyk4pgNht3H/ScFgrIUi7YsP8SYJhO0sY/8ORm
55tuHbBTbFVNtkJQeuTgExNgovLS2W6td9oxgINuxi095W2yaMU9ThebkmpF8hAD7P
56EZP9qx+eXCCZH0b+1uyWnrLv6StC4P86bTrIZ7x+9c42TE4tVM/jQXHFGVJIQw9t
57MfZbd+sqwfjyzJdX46bLSDA8HSLlqyWUql7GSKqzHjpZWm5dxoZS9+7xGfSd/8jl
585p0O/i09Q8oQp5C7AvQjkae3efHwFRDwduDJU0E4chWUKfzh1ILNRupulBzHbtIh
59QgzLe4Vy1ZUCAwEAAaNjMGEwHQYDVR0OBBYEFDKiO7+nQ8mCjT7ZloYawSqFJS1z
60MB8GA1UdIwQYMBaAFGsi4Zlcb2VpEpMgpYZzaJ8t/+cbMA8GA1UdEwEB/wQFMAMB
61Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQBRn8CT8XbH8IlH
62/PFQnLCBOOlHtBCsj0ZHc3mYnC9hswyPjdWcjMn09qBAg3Xe1qI6vSctX69b5Cav
63hfATdF1Qqh4XSuNkqjRW+nASbYJJnYJ9srTT4z/n01TNIk88hyzRfeLoG9j10lj4
64LYjERld2KL1qRUttaui0SKtw6o7U0Dhg4xlvqsFKxXKaktlkdeDJxUQB+z6A0RAX
65zi1e4FNRqmro9GrQ4XiSQheJvu0kpVmbo6JNoRSbqDX9dNOlXJ6s0+3+LvWk8p0W
66/byXzLccJn5gGv1bPJea9tkibVFb33EBA4auqz6HX/eOGAa9ehVjvjvrrgQ669Ef
67EKreOr9i
68-----END CERTIFICATE-----
69-----BEGIN CERTIFICATE-----
70MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9gMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
71BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwN1oXDTMw
72MDcxMjE4MjEwN1owKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
73dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANv8Zd6UbyHR
74eXhyGVXQp0meL7gVuuW06RiSAONhoVBEooxDy1h4jECNXM4skqz5G6RIv1Wfg6oB
75dK+mFmgpXvaq6Tz6q2zW01v6w3aVOvNyrqR6AIwn8O7zLpiKHU0SdL7R4HDZEl7t
76ND3rcbNEbKN0h77gM5EPq+zMUVizW/WJ6s41GKzC2HVdAlaWtnH+tj528kzuQpWf
77+WLIeKzuZSgSoB07tkhRbOrv/2mHO/Ae7lw3l1Sc/4qs45lNO9BC80b2VPhPUSf1
78FuDpv6RRPo4x6ZJC+Lygv5yVzRzo72Wdga4FjbyErXuezT1dGDNHmHZMM34rDg4l
79rTEizxNTaxMCAwEAAaNjMGEwHQYDVR0OBBYEFKCiFmHeofuXvOMpH+QgmSo0sNf7
80MB8GA1UdIwQYMBaAFOSH5/F3GfwSWgRDLDmVq+jLVF6XMA8GA1UdEwEB/wQFMAMB
81Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQBvmmQpfhAviaBc
82OTa91rBDdwe6L9WLBB7Jmk7/BYPCNNfBRO9lxP4GndgTqZeMKVh0qT6KVe0SydHx
83Dz+FRlbos+GA1G5GwVu18u0rt6idXAs7XaWOvB2CfCB8SSWPs5gZaILwRtSXGgat
84P3DFk+Fe6YA8TKoe+2jbRagclohsL8EsVcA1CFMGWIlEL+uHMIagV2lQM6WFZHh8
85419bCmf/6QfP/BUN7sjmr0Nro358zatIPE2SMcyVZnO1WDHKuiitO4I8NHxIyCL1
867OP296PnCa9lGH1DGPsC75va10gyp7gfilPPAQfuNcZBz051PgU0IWAFPFEfDNWi
87XDlcJ/Wx
88-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/6a/roots.pem b/src/regress/lib/libcrypto/certs/6a/roots.pem
new file mode 100644
index 0000000000..dc5acc3b96
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/6a/roots.pem
@@ -0,0 +1,42 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJAOg4yfhGDUAZMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwNloXDTMw
6MDcxMjE4MjEwNlowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDEszjIZEE0K8Bczx4DIntV
8lp/UvjUWmc2HCddZjGIeyJRZy/Qzwi8og8Z3tRomCF1PD9OSU5KSoT3zykhyRfSk
97BzbLMXunSryibepKzzec0D2iG0ln+a3/zdV3lED2YAjxhTKmYJVhs8Wa3G9WyKn
10LKcRP58oA70tN1zAyGIOHZHmblXbe6Sjkk4NuOPkhrGekuMtshGM3FRIkdMhyOE/
116ThInrjqbc5myhpMfQ+dVj5qDJtcp1OiQJF10t6nQ7r6a+0GxjSqvUGoHQNgnz1v
122akMDYw6HLsnqekVJjqauIQHkt9zsC6biKozYt5nkKpcLXQ2/t3eAHmSanzO+5Sb
13AgMBAAGjYzBhMB0GA1UdDgQWBBTkh+fxdxn8EloEQyw5lavoy1RelzAfBgNVHSME
14GDAWgBTkh+fxdxn8EloEQyw5lavoy1RelzAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAQtYzR7SMZkmhv251w052ik9P
16YBXUr+Pny1ZTph+FrLNCaVQLwoTE9N3LjXylxu0X96wyRyhgzV3eeVX1soV0OmW7
17di7AjYvNVIu0CO1BKtduUX+S1S5IszIACJnDxJ+m0ba4Ip29GZ4h1fndJ08jwtfJ
18zWpoCy1m5LD1lMzGg6En32NH1fp8410fkWCxKAavT7oRG6FjKzQepquIJJQyqA1G
19tgYjHe/4jFMoaIlxGj4wsX+40liN+sKnAZTX/7tG1p85i7s4BlAkDzxscOMDcXyt
20hn7Jq3C4PuYT1a6c4iLmK3fLh0I8B1FLLPvmf3itomuOfW06xOKrdz39lxUbHw==
21-----END CERTIFICATE-----
22subject= CN = LibreSSL Test Root CA 2
23issuer= CN = LibreSSL Test Root CA 2
24-----BEGIN CERTIFICATE-----
25MIIDJDCCAgygAwIBAgIDEAABMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNVBAMMF0xp
26YnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTEwMDEwMTAwMDAwMFoXDTIwMDEwMTAw
27MDAwMFowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDIwggEiMA0G
28CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDGeVTchJwFc5TJwf4cJFW0/bGCA8HN
29W1W8qDRawMpykqKrtKdRRYzNDcKUtxXR0eYOZEGAAs9xHw7ZElrqPa5FukwjtVLL
30NT5UVKcJ36s8d58AXyPXvR0yLvCQObvbi6yTaBxXuanQIFQeY2JhOnt7Xa0gPU1u
31ELKVRO62oICDLNRjjDSL2rzysEEmaIA++TZ4yznf/qCUEfbyGZcYiHdyGr3TxmUC
32m2RMlmipYjmVkP6NKXcCZ7z8QMG18Hx4XUhnn3xS0Y/HqHAuguQRgCEXqYTJ6QxA
33JLOixprDnWKn1I9086ETka+ck8ZPw7Pb9kKmSIhDX8DF/FdwAHExYtrbAgMBAAGj
34YzBhMB0GA1UdDgQWBBRrIuGZXG9laRKTIKWGc2ifLf/nGzAfBgNVHSMEGDAWgBRr
35IuGZXG9laRKTIKWGc2ifLf/nGzAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQE
36AwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAQQ/jJGGMGceT6slwEntfa1tTzORAPpP3
37wak/pr0CZznGf6LJK+1XDgCkk1B+2sjVDisEtqAomFAk7Omy5vgQsotLOM9XjttO
38y8s6FpkkNNP+p753qEGzVk+ANGqWXWNn+dl5yDC7SrKgakxjHxfJrQnuMNZCqFUc
39Lf9CpIRt5pxr2LIsbf1jNb6nX29HFnN34q/HZIDpiTq2o14vW++/U3WB8P1Dm0/I
40z9ITSDKjsoPq3y7rqLw4f0GGju2zurLyYqahteK+KYgEzVTwZ9jUxJgKhJKRXvlz
41ISXH+4gugOZkQvEp5835cTRVYCfaUhVXiEzzqyKhARjCyTAMPECl7w==
42-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/6b/bundle.pem b/src/regress/lib/libcrypto/certs/6b/bundle.pem
new file mode 100644
index 0000000000..85513d52ad
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/6b/bundle.pem
@@ -0,0 +1,88 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 2
3subject= CN = LibreSSL Test Intermediate CA 2
4issuer= CN = LibreSSL Test Root CA 2
5subject= CN = LibreSSL Test Intermediate CA 2
6issuer= CN = LibreSSL Test Intermediate CA 1
7subject= CN = LibreSSL Test Intermediate CA 1
8issuer= CN = LibreSSL Test Root CA 1
9-----BEGIN CERTIFICATE-----
10MIIDLjCCAhagAwIBAgIJAIZjiC92oa9jMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
11BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDIwHhcNMjAwNzE0MTgy
12MTA3WhcNMzAwNzEyMTgyMTA3WjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
13cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwSs82Ct0Rn5o
14RPTz/CAgY4rU1/J681+4b1jma1nNogoMP4X44XAfk9rtpJbiA5RJOm+rp9zCJz98
15d/wENBBXaDTfglQIV9S/QMse07XQIelM4wrDXF+qVfYHXju2frMGR1PhXPf2u5sz
16aAwH0CR+PcOssVZ+/EaBf6HUNv7YBUKa5/t2gUAWffMXr7pOc0dz1p1CqMyrPpgC
17oYnJ7z04sG5k+cEs3hnc8WOAijcfs83PnUz1Kt3EN3lDTqyisHo7lKkkfZJAzUyZ
18sxWfPte7OSKCcntJKFB66VmsAtF4pQkOVfl+DZpMnyEQmLuQC/IxKzRxMn1nsVBw
19WsSmWGHIwQIDAQABo2AwXjAdBgNVHQ4EFgQUGz0CqreuH+lcWTiiQEvcAhpAHjow
20HwYDVR0jBBgwFoAUMqI7v6dDyYKNPtmWhhrBKoUlLXMwDAYDVR0TAQH/BAIwADAO
21BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAKKUZXhSSNmLbhGYtBtx
22wxhuPZcYRWC3Z7UNosnkgtt5rpNkBek6GpLRVr7+DzV2Zc94tRlzLr6Ot9ntkHDK
23HYawNjAQbDsHo3mu/kQw3DmOIJ0e8xWSx+ka9thp5a6riihNyJ7TAvi2S9EyI5JO
244wSokIfibE5kk6DbXE2iWuOl0+w/oDJYIg60Aeyr0N7r92xF8Ycmf3/bs00cC6fF
25PhjZ9uK6dennzuLoaF9yLpOBM3lKRxwPhs951xRwnP1a362g/8N9ASds9Z3uWXhk
26TS6rVxpcGVy10aFJOHwQNaaydh6dNi+5dlYU8CPtC7QMyurmNaPWM5n4IgQzPE6j
27Grs=
28-----END CERTIFICATE-----
29-----BEGIN CERTIFICATE-----
30MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9iMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
31BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwN1oXDTMw
32MDcxMjE4MjEwN1owKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
33dGUgQ0EgMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM/GtSHDwu+/
34ajgJ9sxNimQhES/PGaz60cIXOXXyk4pgNht3H/ScFgrIUi7YsP8SYJhO0sY/8ORm
35tuHbBTbFVNtkJQeuTgExNgovLS2W6td9oxgINuxi095W2yaMU9ThebkmpF8hAD7P
36EZP9qx+eXCCZH0b+1uyWnrLv6StC4P86bTrIZ7x+9c42TE4tVM/jQXHFGVJIQw9t
37MfZbd+sqwfjyzJdX46bLSDA8HSLlqyWUql7GSKqzHjpZWm5dxoZS9+7xGfSd/8jl
385p0O/i09Q8oQp5C7AvQjkae3efHwFRDwduDJU0E4chWUKfzh1ILNRupulBzHbtIh
39QgzLe4Vy1ZUCAwEAAaNjMGEwHQYDVR0OBBYEFDKiO7+nQ8mCjT7ZloYawSqFJS1z
40MB8GA1UdIwQYMBaAFGsi4Zlcb2VpEpMgpYZzaJ8t/+cbMA8GA1UdEwEB/wQFMAMB
41Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQBRn8CT8XbH8IlH
42/PFQnLCBOOlHtBCsj0ZHc3mYnC9hswyPjdWcjMn09qBAg3Xe1qI6vSctX69b5Cav
43hfATdF1Qqh4XSuNkqjRW+nASbYJJnYJ9srTT4z/n01TNIk88hyzRfeLoG9j10lj4
44LYjERld2KL1qRUttaui0SKtw6o7U0Dhg4xlvqsFKxXKaktlkdeDJxUQB+z6A0RAX
45zi1e4FNRqmro9GrQ4XiSQheJvu0kpVmbo6JNoRSbqDX9dNOlXJ6s0+3+LvWk8p0W
46/byXzLccJn5gGv1bPJea9tkibVFb33EBA4auqz6HX/eOGAa9ehVjvjvrrgQ669Ef
47EKreOr9i
48-----END CERTIFICATE-----
49-----BEGIN CERTIFICATE-----
50MIIDOjCCAiKgAwIBAgIJAIZjiC92oa9hMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
51BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
52MTA3WhcNMzAwNzEyMTgyMTA3WjAqMSgwJgYDVQQDDB9MaWJyZVNTTCBUZXN0IElu
53dGVybWVkaWF0ZSBDQSAyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
54z8a1IcPC779qOAn2zE2KZCERL88ZrPrRwhc5dfKTimA2G3cf9JwWCshSLtiw/xJg
55mE7Sxj/w5Ga24dsFNsVU22QlB65OATE2Ci8tLZbq132jGAg27GLT3lbbJoxT1OF5
56uSakXyEAPs8Rk/2rH55cIJkfRv7W7Jaesu/pK0Lg/zptOshnvH71zjZMTi1Uz+NB
57ccUZUkhDD20x9lt36yrB+PLMl1fjpstIMDwdIuWrJZSqXsZIqrMeOllabl3GhlL3
587vEZ9J3/yOXmnQ7+LT1DyhCnkLsC9CORp7d58fAVEPB24MlTQThyFZQp/OHUgs1G
596m6UHMdu0iFCDMt7hXLVlQIDAQABo2MwYTAdBgNVHQ4EFgQUMqI7v6dDyYKNPtmW
60hhrBKoUlLXMwHwYDVR0jBBgwFoAUoKIWYd6h+5e84ykf5CCZKjSw1/swDwYDVR0T
61AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggEBAIPP
629KzMlph6tpdLSb3hbbvpUMF1xb45dSpD9ZGrzqnJeLZeeUhINeIPS7BpTntEUp+X
63PJhdZkM520xF5vA5Jr4smvniyyhXPBKWvOs39tG8PfkQe2C+B8HPaNurBldaLhbt
64eFfa4L6aEiZPq3MUHz4zY1uKNLyD8+fOFx3xGcHwmhW7AHPc0ICR8CDTjh5Ngiz0
65zwTklkR7GF2qMCohf7jdRpifXq/aT9gn0BCRKFPth5Kvh21qTV9kVBTW+FWRMnGR
66BnUhNlWHFZ3D4K36RGCRbxX+5EU8cV0QJ7CklgkWDwqsbeUR2Z9cKpmJ7jDNqBz3
67pwUpMb35cBltk4S7tYI=
68-----END CERTIFICATE-----
69-----BEGIN CERTIFICATE-----
70MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9gMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
71BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwN1oXDTMw
72MDcxMjE4MjEwN1owKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
73dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANv8Zd6UbyHR
74eXhyGVXQp0meL7gVuuW06RiSAONhoVBEooxDy1h4jECNXM4skqz5G6RIv1Wfg6oB
75dK+mFmgpXvaq6Tz6q2zW01v6w3aVOvNyrqR6AIwn8O7zLpiKHU0SdL7R4HDZEl7t
76ND3rcbNEbKN0h77gM5EPq+zMUVizW/WJ6s41GKzC2HVdAlaWtnH+tj528kzuQpWf
77+WLIeKzuZSgSoB07tkhRbOrv/2mHO/Ae7lw3l1Sc/4qs45lNO9BC80b2VPhPUSf1
78FuDpv6RRPo4x6ZJC+Lygv5yVzRzo72Wdga4FjbyErXuezT1dGDNHmHZMM34rDg4l
79rTEizxNTaxMCAwEAAaNjMGEwHQYDVR0OBBYEFKCiFmHeofuXvOMpH+QgmSo0sNf7
80MB8GA1UdIwQYMBaAFOSH5/F3GfwSWgRDLDmVq+jLVF6XMA8GA1UdEwEB/wQFMAMB
81Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQBvmmQpfhAviaBc
82OTa91rBDdwe6L9WLBB7Jmk7/BYPCNNfBRO9lxP4GndgTqZeMKVh0qT6KVe0SydHx
83Dz+FRlbos+GA1G5GwVu18u0rt6idXAs7XaWOvB2CfCB8SSWPs5gZaILwRtSXGgat
84P3DFk+Fe6YA8TKoe+2jbRagclohsL8EsVcA1CFMGWIlEL+uHMIagV2lQM6WFZHh8
85419bCmf/6QfP/BUN7sjmr0Nro358zatIPE2SMcyVZnO1WDHKuiitO4I8NHxIyCL1
867OP296PnCa9lGH1DGPsC75va10gyp7gfilPPAQfuNcZBz051PgU0IWAFPFEfDNWi
87XDlcJ/Wx
88-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/6b/roots.pem b/src/regress/lib/libcrypto/certs/6b/roots.pem
new file mode 100644
index 0000000000..dc5acc3b96
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/6b/roots.pem
@@ -0,0 +1,42 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJAOg4yfhGDUAZMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwNloXDTMw
6MDcxMjE4MjEwNlowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDEszjIZEE0K8Bczx4DIntV
8lp/UvjUWmc2HCddZjGIeyJRZy/Qzwi8og8Z3tRomCF1PD9OSU5KSoT3zykhyRfSk
97BzbLMXunSryibepKzzec0D2iG0ln+a3/zdV3lED2YAjxhTKmYJVhs8Wa3G9WyKn
10LKcRP58oA70tN1zAyGIOHZHmblXbe6Sjkk4NuOPkhrGekuMtshGM3FRIkdMhyOE/
116ThInrjqbc5myhpMfQ+dVj5qDJtcp1OiQJF10t6nQ7r6a+0GxjSqvUGoHQNgnz1v
122akMDYw6HLsnqekVJjqauIQHkt9zsC6biKozYt5nkKpcLXQ2/t3eAHmSanzO+5Sb
13AgMBAAGjYzBhMB0GA1UdDgQWBBTkh+fxdxn8EloEQyw5lavoy1RelzAfBgNVHSME
14GDAWgBTkh+fxdxn8EloEQyw5lavoy1RelzAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAQtYzR7SMZkmhv251w052ik9P
16YBXUr+Pny1ZTph+FrLNCaVQLwoTE9N3LjXylxu0X96wyRyhgzV3eeVX1soV0OmW7
17di7AjYvNVIu0CO1BKtduUX+S1S5IszIACJnDxJ+m0ba4Ip29GZ4h1fndJ08jwtfJ
18zWpoCy1m5LD1lMzGg6En32NH1fp8410fkWCxKAavT7oRG6FjKzQepquIJJQyqA1G
19tgYjHe/4jFMoaIlxGj4wsX+40liN+sKnAZTX/7tG1p85i7s4BlAkDzxscOMDcXyt
20hn7Jq3C4PuYT1a6c4iLmK3fLh0I8B1FLLPvmf3itomuOfW06xOKrdz39lxUbHw==
21-----END CERTIFICATE-----
22subject= CN = LibreSSL Test Root CA 2
23issuer= CN = LibreSSL Test Root CA 2
24-----BEGIN CERTIFICATE-----
25MIIDJDCCAgygAwIBAgIDEAABMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNVBAMMF0xp
26YnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTEwMDEwMTAwMDAwMFoXDTIwMDEwMTAw
27MDAwMFowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDIwggEiMA0G
28CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDGeVTchJwFc5TJwf4cJFW0/bGCA8HN
29W1W8qDRawMpykqKrtKdRRYzNDcKUtxXR0eYOZEGAAs9xHw7ZElrqPa5FukwjtVLL
30NT5UVKcJ36s8d58AXyPXvR0yLvCQObvbi6yTaBxXuanQIFQeY2JhOnt7Xa0gPU1u
31ELKVRO62oICDLNRjjDSL2rzysEEmaIA++TZ4yznf/qCUEfbyGZcYiHdyGr3TxmUC
32m2RMlmipYjmVkP6NKXcCZ7z8QMG18Hx4XUhnn3xS0Y/HqHAuguQRgCEXqYTJ6QxA
33JLOixprDnWKn1I9086ETka+ck8ZPw7Pb9kKmSIhDX8DF/FdwAHExYtrbAgMBAAGj
34YzBhMB0GA1UdDgQWBBRrIuGZXG9laRKTIKWGc2ifLf/nGzAfBgNVHSMEGDAWgBRr
35IuGZXG9laRKTIKWGc2ifLf/nGzAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQE
36AwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAQQ/jJGGMGceT6slwEntfa1tTzORAPpP3
37wak/pr0CZznGf6LJK+1XDgCkk1B+2sjVDisEtqAomFAk7Omy5vgQsotLOM9XjttO
38y8s6FpkkNNP+p753qEGzVk+ANGqWXWNn+dl5yDC7SrKgakxjHxfJrQnuMNZCqFUc
39Lf9CpIRt5pxr2LIsbf1jNb6nX29HFnN34q/HZIDpiTq2o14vW++/U3WB8P1Dm0/I
40z9ITSDKjsoPq3y7rqLw4f0GGju2zurLyYqahteK+KYgEzVTwZ9jUxJgKhJKRXvlz
41ISXH+4gugOZkQvEp5835cTRVYCfaUhVXiEzzqyKhARjCyTAMPECl7w==
42-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/7a/bundle.pem b/src/regress/lib/libcrypto/certs/7a/bundle.pem
new file mode 100644
index 0000000000..48a46e473c
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/7a/bundle.pem
@@ -0,0 +1,88 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 2
3subject= CN = LibreSSL Test Intermediate CA 2
4issuer= CN = LibreSSL Test Intermediate CA 1
5subject= CN = LibreSSL Test Intermediate CA 2
6issuer= CN = LibreSSL Test Root CA 2
7subject= CN = LibreSSL Test Intermediate CA 1
8issuer= CN = LibreSSL Test Root CA 1
9-----BEGIN CERTIFICATE-----
10MIIDLjCCAhagAwIBAgIJAIZjiC92oa9nMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
11BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDIwHhcNMjAwNzE0MTgy
12MTA5WhcNMzAwNzEyMTgyMTA5WjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
13cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxn23Ew+Hv0As
143y/RA2tiaAXrKzUkuwmd9Rg0ctsghkHUQEuU91ZBz5NzMVvqMJRqccRlXnmqhw0F
15REhulnAOzs0mrQ+pL6L/JC8ctSxgxNhxwuZKW1AF5Z+h3CTwb9TntVQzN7Ok0Cfn
16B2fuAYnXarb5//e+nG/md5eoVvI9LolipZ0TSX1aXy8BKknXpzWTrFi/Zpvfl9yy
17EKjDaWCFQRSEZieJ/szR1/GEEycKUwc1O6qQCHEooySZxjDUocwmEIpwz0M2kgMg
18bEfJvijPIjVknvNvPk/+zUH32YRGffLeKnMgdVkBKlo1SxyQ6s1uGPFBCLc99Q3P
19ICijEVD2uQIDAQABo2AwXjAdBgNVHQ4EFgQUoeuKNYPR8j+HHn9F2fkvdqsqpPQw
20HwYDVR0jBBgwFoAULqO3fX3149SdaKGVcSzEbXqW9rMwDAYDVR0TAQH/BAIwADAO
21BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAAktWNS0BQ2WDdOB8+4q
22KCMLHTgtCqJN/9oNdv7/VvdyjblNajZuaoryp6FaUNgeYO6S/6iJzMICMJQ1DEqs
23no9seH2/17H7sKQf0gGtjOWDYLHMteCmhu1lGy+11qK5Fb5O7lmQf0WNQV3n47Sa
24lEj4Hw1J3PbiJx/Y7ySMI8VqM/5E6UGVkBdL6dFofi49FPasj/nlg3PXBZp3ddir
25ft3H/qNbE/sUyrOkDtJVIw53SrPAd3bstqAIdXZwSlN9UadLCGpWigjZ8ozk0I0W
26pLy8Z6zci4Wy9cmbZYRIjoGJL/pLz77snxJAvRQSSI8eitfCBtaonJf5FVNFrHBS
27cEo=
28-----END CERTIFICATE-----
29-----BEGIN CERTIFICATE-----
30MIIDOjCCAiKgAwIBAgIJAIZjiC92oa9lMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
31BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
32MTA5WhcNMzAwNzEyMTgyMTA5WjAqMSgwJgYDVQQDDB9MaWJyZVNTTCBUZXN0IElu
33dGVybWVkaWF0ZSBDQSAyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
342OvQ+gVTKmN4AIEw91+xK/MuqxqBNetuXmkqTYeKUsYCdZcQjqxwDQ9UgNbSCyM7
35AhgR2xdtG430y8w7g32cNhhccUJKLdoApNULYQRmQrXuFNF2ZLVsc2tQ7mE885yT
36eNEcMwnn5B+FVUWKxcXfEmxSeZkcEgO8r0DSg+Hcb7iQdLpwDxzOmIEAbd9yXgOx
3758XydrSRbzWrMJwVUSPt04Rpr660AmVFnYYC+1rCclveBE/WnSEmAsOELf6hGIT5
38hr6s//fO1DBo29BxpPeZg+ml06mpddL/dtpOF+pG5CGlGOf7yXAOJBYac8qsNE1u
39T2gfB29/ZF2ofAjvZEPH0QIDAQABo2MwYTAdBgNVHQ4EFgQULqO3fX3149SdaKGV
40cSzEbXqW9rMwHwYDVR0jBBgwFoAUV8Z4nz/BKv+7duQuFmk/pqxX6GAwDwYDVR0T
41AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggEBACg6
420hbV0b2wBQtmdTeAN9krKbQkEv1kvu3CVks5MHR9TiuuCkhO4PUjQVB72W3bPyBW
43HU+urcPNyYlFF43ryOqBM9Bzn0VhYh7h64aBegqrLFwjJohT6yAHtKuf9ki5h4Cn
44ajSVHt2Gu9TUi7PglsS4i7DVEJuopOGOR5X0smuPIlwN2xiUL9qckW8JewlomFTn
45JKZ104POhlBVgPmt2gay9LYY7bNic/SAu88Ww59XWgcrIiXUcDVkPK/FXLD3qP5z
460jZV3SH+qenMrixgKbHyMJtnw14hCJWqiWPjmeIh7pD2T1UyXnWiIfQOLQ25JdOi
47qk7okbOCtsQ4uU8m5HM=
48-----END CERTIFICATE-----
49-----BEGIN CERTIFICATE-----
50MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9mMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
51BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwOVoXDTMw
52MDcxMjE4MjEwOVowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
53dGUgQ0EgMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANjr0PoFUypj
54eACBMPdfsSvzLqsagTXrbl5pKk2HilLGAnWXEI6scA0PVIDW0gsjOwIYEdsXbRuN
559MvMO4N9nDYYXHFCSi3aAKTVC2EEZkK17hTRdmS1bHNrUO5hPPOck3jRHDMJ5+Qf
56hVVFisXF3xJsUnmZHBIDvK9A0oPh3G+4kHS6cA8czpiBAG3fcl4DsefF8na0kW81
57qzCcFVEj7dOEaa+utAJlRZ2GAvtawnJb3gRP1p0hJgLDhC3+oRiE+Ya+rP/3ztQw
58aNvQcaT3mYPppdOpqXXS/3baThfqRuQhpRjn+8lwDiQWGnPKrDRNbk9oHwdvf2Rd
59qHwI72RDx9ECAwEAAaNjMGEwHQYDVR0OBBYEFC6jt3199ePUnWihlXEsxG16lvaz
60MB8GA1UdIwQYMBaAFNGpG3qH3FamCbsavFOtO9pzcmJyMA8GA1UdEwEB/wQFMAMB
61Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQB4q/29aFFpYC3f
629GAlg18AY2PkzdLQcup93i/Y6KEhc7Ruc3dXDH4G17p3zpxizInGyQp60yDSZ0GM
6306FQxKhnrgudTM7OP5tkAjKDyiP6tzCWwmyjYmmipASdNHFipDlmGtWcybpez7/2
64MAZiXfxXQU4qRhe4G85rxEayILGBqjHXpYAOogRYMkzmpBKxjKexQKPyq9kBtr4m
65CeTH5wrOJrBTd8WUVfA43FDaciJF5pZFJP5xiCntauEuKSbEPsWgArHNdwfCUyAV
663JmnsX/SM6Dz7HidI5Ep5589xtJnMrCJwobdKONVSMGwMJYhkgQKk5W6HgW/2pTH
67NrfAXgAH
68-----END CERTIFICATE-----
69-----BEGIN CERTIFICATE-----
70MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9kMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
71BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwOVoXDTMw
72MDcxMjE4MjEwOVowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
73dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMFi4Hty9nEf
74YlXM9ksSrW4eMG4oFoKtVClqUKGTTYCOj+KCia3zUkJNq+ribrJOpbbgqlVpdcne
75CuJ0exxGotdHiQdO/J9iN288n6F5qDXJzc6enrIK7UcAXnq9GSOwW8DQE89Efy1k
76gnOqv549pkm+D4BcYPUZCI6odK6Tib4Tn2KIVvqEJfutP2H5xC3K/E0cb1XhFGYb
77PV2d+Hjv61cOgH0nSkt0NlV2q+YXJsfTbDfMyUJ2BJn2luC2Hb/69SCsV08AWr4c
78YYb+oJ3WroAxtGNFagII66kbpfmzKzE9cehOkc6vPEn6eXwoHEbY3PQdjGlrNC1F
79UIAco2X3HfcCAwEAAaNjMGEwHQYDVR0OBBYEFFfGeJ8/wSr/u3bkLhZpP6asV+hg
80MB8GA1UdIwQYMBaAFPacoJBbRitxY/CtX4uSlA+Ltw64MA8GA1UdEwEB/wQFMAMB
81Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQBa/B7AyGXg37C8
82NMsaUskeyogLqxqHUXOAiTinOxouudn+DgHkEvFISr7FlEASrzPBCCmUtGcjkB5k
83vnde6RNJPlDisI6QP4GjqLVog/bL0kqCQ8KAsKgjcjQMdkO8rCM+Ofl/A+oEmEH1
84QAn0uisXOsx0OdtuHawcN9zrzRg+voA+DOnKfPPPcKpuLzrEXD4L+gmgCpeXTCu+
85wAF2StwBlByeX7WHcwjDm3h3Uq/ziSSMfUpWLzCwTZYv1mxmw83F+pX6WaJqnYKQ
86aqV62Yu3dsaexjpJ8hSa9fUMgHPvMmDtgB5JyUaFkWtAhi0agLOi3zP/AmFPfiX+
87gdw8I6eW
88-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/7a/roots.pem b/src/regress/lib/libcrypto/certs/7a/roots.pem
new file mode 100644
index 0000000000..69f3914dea
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/7a/roots.pem
@@ -0,0 +1,42 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDJDCCAgygAwIBAgIDEAABMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNVBAMMF0xp
5YnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTEwMDEwMTAwMDAwMFoXDTIwMDEwMTAw
6MDAwMFowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEwggEiMA0G
7CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC1VSYCZYZaFb8UPAM0XoyjafKpva0b
82U+baChr7IIzk3FwYoPFdI3VzKUq6Ui7EWI1Dk5aw39JRZKKz9LLwqnuvNsk8Xdw
9NpHZSHn9DRadxl/qxCDr9KUmnC5mUkuPfw2gdc1qT+HHxC137gBC8twTfJRmUzB5
10tNUngMBmDml1+5tosIbTdspwL4q8lqmGhIl2QbUDY1jow8FxuKRDNNyEkw82AHMD
11sZKryXzL/V7wRS8WapxfP/EIzVConS6JpgNRLeGIPDFWsv9rZA7JKjMKS9RBuYDs
12+Tb5gBIGqp/3pZuEXlCLofYsjBb3gBll1vocAf33LvB68jzzJNemubBLAgMBAAGj
13YzBhMB0GA1UdDgQWBBT2nKCQW0YrcWPwrV+LkpQPi7cOuDAfBgNVHSMEGDAWgBT2
14nKCQW0YrcWPwrV+LkpQPi7cOuDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQE
15AwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAMkduq+EAqhk/NBnFCXha5hNA0Jwg+/I4
16GnzGKTuMFYYv37peZumjN0uryTzXk0Ei4pzW4vz8/ehf+JRep9rdBkGowtff7Xsz
17Y+EWwTZWNVWHTV25erC81sPWsT88PDaALAab56DIKpRF3CDnJSQIvZQoajy5Rye4
18csFx6gNSuNyA9BGP0FhxWn4sDXe2DTE0mKpx/u+9m9rIC3ZtfBzKmG6XKZ5PmwUv
190Givl2nkEH4txFFQm2bFUbdJZ26ZRCklRhTw7gBL8H6ttBtZaSb+zZwukSVWmMnS
20DsQEjKNR6CchlnxAXTjUGIdbFPeJAl9TmCJ3f621bIb/zq0DxE+85A==
21-----END CERTIFICATE-----
22subject= CN = LibreSSL Test Root CA 2
23issuer= CN = LibreSSL Test Root CA 2
24-----BEGIN CERTIFICATE-----
25MIIDKjCCAhKgAwIBAgIJAOgRyzRdP4eSMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
26BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwOVoXDTMw
27MDcxMjE4MjEwOVowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDIw
28ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC/oBAKIWc2I2YaZc0mNZPt
295EE+q4DcvuvW/gVNI20zIc4rIggM6AAIfxxn2AZWlJyUXjsfYa198vVXO7kO4CgC
30OBqpYfsYPp209SmxfEACa5TiV5/k3l3FEmBNq96iyPRVtMpPbB398uA949wrt/PS
31hKt5rwGjYDnchbo8utrDMW2oqh1dfgKw+YGTrA5YX+f1NilGZNeW7PgY8LDCcNK6
32SexS3fetzfuug7s7mj3MfMV6b3CM7ApijRg65zihV5GCVeLGKyUGw26Cz2cjLkDF
3324KxFkunD5Ildj+1Fi7CyOVv93zV1UfCR4+nOlzQrgTFONkFeMK0fSCRZCKwzp25
34AgMBAAGjYzBhMB0GA1UdDgQWBBTRqRt6h9xWpgm7GrxTrTvac3JicjAfBgNVHSME
35GDAWgBTRqRt6h9xWpgm7GrxTrTvac3JicjAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
36DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAfBaxTVYD8TpX7GIwBJzM44Pn
37jsO8UN+phDE12Pzo6dveC2HK5xXg/cryqbXvu+lAwPX0nNHAobXSZ4W0HhxixDbL
38h6m8XVIQRQNz3H98ISTTHlz33H7NTfZvfMisOHB8MikMq/TlhR3XC3vjNCgEN58s
39f+UU9aO/7WbqteSOxFBHlsXJIkFHzkXcscKy+xf3SKDSEwDAqv5deCgAarGPhvP4
403sukpL7xzAEKgmq7ww+3KvI3JAHRgmr30eel50GlUyY0kiEODX9S8mlr5f6eFM4X
41tue9CDPfUf+piEEF7IIMSXt7Ej+bN+WKNZrigOQY5onLMyD0mJ15mavuKh5fbw==
42-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/7b/bundle.pem b/src/regress/lib/libcrypto/certs/7b/bundle.pem
new file mode 100644
index 0000000000..b71adb4515
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/7b/bundle.pem
@@ -0,0 +1,88 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 2
3subject= CN = LibreSSL Test Intermediate CA 2
4issuer= CN = LibreSSL Test Root CA 2
5subject= CN = LibreSSL Test Intermediate CA 2
6issuer= CN = LibreSSL Test Intermediate CA 1
7subject= CN = LibreSSL Test Intermediate CA 1
8issuer= CN = LibreSSL Test Root CA 1
9-----BEGIN CERTIFICATE-----
10MIIDLjCCAhagAwIBAgIJAIZjiC92oa9nMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
11BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDIwHhcNMjAwNzE0MTgy
12MTA5WhcNMzAwNzEyMTgyMTA5WjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
13cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxn23Ew+Hv0As
143y/RA2tiaAXrKzUkuwmd9Rg0ctsghkHUQEuU91ZBz5NzMVvqMJRqccRlXnmqhw0F
15REhulnAOzs0mrQ+pL6L/JC8ctSxgxNhxwuZKW1AF5Z+h3CTwb9TntVQzN7Ok0Cfn
16B2fuAYnXarb5//e+nG/md5eoVvI9LolipZ0TSX1aXy8BKknXpzWTrFi/Zpvfl9yy
17EKjDaWCFQRSEZieJ/szR1/GEEycKUwc1O6qQCHEooySZxjDUocwmEIpwz0M2kgMg
18bEfJvijPIjVknvNvPk/+zUH32YRGffLeKnMgdVkBKlo1SxyQ6s1uGPFBCLc99Q3P
19ICijEVD2uQIDAQABo2AwXjAdBgNVHQ4EFgQUoeuKNYPR8j+HHn9F2fkvdqsqpPQw
20HwYDVR0jBBgwFoAULqO3fX3149SdaKGVcSzEbXqW9rMwDAYDVR0TAQH/BAIwADAO
21BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAAktWNS0BQ2WDdOB8+4q
22KCMLHTgtCqJN/9oNdv7/VvdyjblNajZuaoryp6FaUNgeYO6S/6iJzMICMJQ1DEqs
23no9seH2/17H7sKQf0gGtjOWDYLHMteCmhu1lGy+11qK5Fb5O7lmQf0WNQV3n47Sa
24lEj4Hw1J3PbiJx/Y7ySMI8VqM/5E6UGVkBdL6dFofi49FPasj/nlg3PXBZp3ddir
25ft3H/qNbE/sUyrOkDtJVIw53SrPAd3bstqAIdXZwSlN9UadLCGpWigjZ8ozk0I0W
26pLy8Z6zci4Wy9cmbZYRIjoGJL/pLz77snxJAvRQSSI8eitfCBtaonJf5FVNFrHBS
27cEo=
28-----END CERTIFICATE-----
29-----BEGIN CERTIFICATE-----
30MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9mMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
31BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwOVoXDTMw
32MDcxMjE4MjEwOVowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
33dGUgQ0EgMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANjr0PoFUypj
34eACBMPdfsSvzLqsagTXrbl5pKk2HilLGAnWXEI6scA0PVIDW0gsjOwIYEdsXbRuN
359MvMO4N9nDYYXHFCSi3aAKTVC2EEZkK17hTRdmS1bHNrUO5hPPOck3jRHDMJ5+Qf
36hVVFisXF3xJsUnmZHBIDvK9A0oPh3G+4kHS6cA8czpiBAG3fcl4DsefF8na0kW81
37qzCcFVEj7dOEaa+utAJlRZ2GAvtawnJb3gRP1p0hJgLDhC3+oRiE+Ya+rP/3ztQw
38aNvQcaT3mYPppdOpqXXS/3baThfqRuQhpRjn+8lwDiQWGnPKrDRNbk9oHwdvf2Rd
39qHwI72RDx9ECAwEAAaNjMGEwHQYDVR0OBBYEFC6jt3199ePUnWihlXEsxG16lvaz
40MB8GA1UdIwQYMBaAFNGpG3qH3FamCbsavFOtO9pzcmJyMA8GA1UdEwEB/wQFMAMB
41Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQB4q/29aFFpYC3f
429GAlg18AY2PkzdLQcup93i/Y6KEhc7Ruc3dXDH4G17p3zpxizInGyQp60yDSZ0GM
4306FQxKhnrgudTM7OP5tkAjKDyiP6tzCWwmyjYmmipASdNHFipDlmGtWcybpez7/2
44MAZiXfxXQU4qRhe4G85rxEayILGBqjHXpYAOogRYMkzmpBKxjKexQKPyq9kBtr4m
45CeTH5wrOJrBTd8WUVfA43FDaciJF5pZFJP5xiCntauEuKSbEPsWgArHNdwfCUyAV
463JmnsX/SM6Dz7HidI5Ep5589xtJnMrCJwobdKONVSMGwMJYhkgQKk5W6HgW/2pTH
47NrfAXgAH
48-----END CERTIFICATE-----
49-----BEGIN CERTIFICATE-----
50MIIDOjCCAiKgAwIBAgIJAIZjiC92oa9lMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
51BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
52MTA5WhcNMzAwNzEyMTgyMTA5WjAqMSgwJgYDVQQDDB9MaWJyZVNTTCBUZXN0IElu
53dGVybWVkaWF0ZSBDQSAyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
542OvQ+gVTKmN4AIEw91+xK/MuqxqBNetuXmkqTYeKUsYCdZcQjqxwDQ9UgNbSCyM7
55AhgR2xdtG430y8w7g32cNhhccUJKLdoApNULYQRmQrXuFNF2ZLVsc2tQ7mE885yT
56eNEcMwnn5B+FVUWKxcXfEmxSeZkcEgO8r0DSg+Hcb7iQdLpwDxzOmIEAbd9yXgOx
5758XydrSRbzWrMJwVUSPt04Rpr660AmVFnYYC+1rCclveBE/WnSEmAsOELf6hGIT5
58hr6s//fO1DBo29BxpPeZg+ml06mpddL/dtpOF+pG5CGlGOf7yXAOJBYac8qsNE1u
59T2gfB29/ZF2ofAjvZEPH0QIDAQABo2MwYTAdBgNVHQ4EFgQULqO3fX3149SdaKGV
60cSzEbXqW9rMwHwYDVR0jBBgwFoAUV8Z4nz/BKv+7duQuFmk/pqxX6GAwDwYDVR0T
61AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggEBACg6
620hbV0b2wBQtmdTeAN9krKbQkEv1kvu3CVks5MHR9TiuuCkhO4PUjQVB72W3bPyBW
63HU+urcPNyYlFF43ryOqBM9Bzn0VhYh7h64aBegqrLFwjJohT6yAHtKuf9ki5h4Cn
64ajSVHt2Gu9TUi7PglsS4i7DVEJuopOGOR5X0smuPIlwN2xiUL9qckW8JewlomFTn
65JKZ104POhlBVgPmt2gay9LYY7bNic/SAu88Ww59XWgcrIiXUcDVkPK/FXLD3qP5z
660jZV3SH+qenMrixgKbHyMJtnw14hCJWqiWPjmeIh7pD2T1UyXnWiIfQOLQ25JdOi
67qk7okbOCtsQ4uU8m5HM=
68-----END CERTIFICATE-----
69-----BEGIN CERTIFICATE-----
70MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9kMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
71BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjEwOVoXDTMw
72MDcxMjE4MjEwOVowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
73dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMFi4Hty9nEf
74YlXM9ksSrW4eMG4oFoKtVClqUKGTTYCOj+KCia3zUkJNq+ribrJOpbbgqlVpdcne
75CuJ0exxGotdHiQdO/J9iN288n6F5qDXJzc6enrIK7UcAXnq9GSOwW8DQE89Efy1k
76gnOqv549pkm+D4BcYPUZCI6odK6Tib4Tn2KIVvqEJfutP2H5xC3K/E0cb1XhFGYb
77PV2d+Hjv61cOgH0nSkt0NlV2q+YXJsfTbDfMyUJ2BJn2luC2Hb/69SCsV08AWr4c
78YYb+oJ3WroAxtGNFagII66kbpfmzKzE9cehOkc6vPEn6eXwoHEbY3PQdjGlrNC1F
79UIAco2X3HfcCAwEAAaNjMGEwHQYDVR0OBBYEFFfGeJ8/wSr/u3bkLhZpP6asV+hg
80MB8GA1UdIwQYMBaAFPacoJBbRitxY/CtX4uSlA+Ltw64MA8GA1UdEwEB/wQFMAMB
81Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQBa/B7AyGXg37C8
82NMsaUskeyogLqxqHUXOAiTinOxouudn+DgHkEvFISr7FlEASrzPBCCmUtGcjkB5k
83vnde6RNJPlDisI6QP4GjqLVog/bL0kqCQ8KAsKgjcjQMdkO8rCM+Ofl/A+oEmEH1
84QAn0uisXOsx0OdtuHawcN9zrzRg+voA+DOnKfPPPcKpuLzrEXD4L+gmgCpeXTCu+
85wAF2StwBlByeX7WHcwjDm3h3Uq/ziSSMfUpWLzCwTZYv1mxmw83F+pX6WaJqnYKQ
86aqV62Yu3dsaexjpJ8hSa9fUMgHPvMmDtgB5JyUaFkWtAhi0agLOi3zP/AmFPfiX+
87gdw8I6eW
88-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/7b/roots.pem b/src/regress/lib/libcrypto/certs/7b/roots.pem
new file mode 100644
index 0000000000..69f3914dea
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/7b/roots.pem
@@ -0,0 +1,42 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDJDCCAgygAwIBAgIDEAABMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNVBAMMF0xp
5YnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTEwMDEwMTAwMDAwMFoXDTIwMDEwMTAw
6MDAwMFowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEwggEiMA0G
7CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC1VSYCZYZaFb8UPAM0XoyjafKpva0b
82U+baChr7IIzk3FwYoPFdI3VzKUq6Ui7EWI1Dk5aw39JRZKKz9LLwqnuvNsk8Xdw
9NpHZSHn9DRadxl/qxCDr9KUmnC5mUkuPfw2gdc1qT+HHxC137gBC8twTfJRmUzB5
10tNUngMBmDml1+5tosIbTdspwL4q8lqmGhIl2QbUDY1jow8FxuKRDNNyEkw82AHMD
11sZKryXzL/V7wRS8WapxfP/EIzVConS6JpgNRLeGIPDFWsv9rZA7JKjMKS9RBuYDs
12+Tb5gBIGqp/3pZuEXlCLofYsjBb3gBll1vocAf33LvB68jzzJNemubBLAgMBAAGj
13YzBhMB0GA1UdDgQWBBT2nKCQW0YrcWPwrV+LkpQPi7cOuDAfBgNVHSMEGDAWgBT2
14nKCQW0YrcWPwrV+LkpQPi7cOuDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQE
15AwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAMkduq+EAqhk/NBnFCXha5hNA0Jwg+/I4
16GnzGKTuMFYYv37peZumjN0uryTzXk0Ei4pzW4vz8/ehf+JRep9rdBkGowtff7Xsz
17Y+EWwTZWNVWHTV25erC81sPWsT88PDaALAab56DIKpRF3CDnJSQIvZQoajy5Rye4
18csFx6gNSuNyA9BGP0FhxWn4sDXe2DTE0mKpx/u+9m9rIC3ZtfBzKmG6XKZ5PmwUv
190Givl2nkEH4txFFQm2bFUbdJZ26ZRCklRhTw7gBL8H6ttBtZaSb+zZwukSVWmMnS
20DsQEjKNR6CchlnxAXTjUGIdbFPeJAl9TmCJ3f621bIb/zq0DxE+85A==
21-----END CERTIFICATE-----
22subject= CN = LibreSSL Test Root CA 2
23issuer= CN = LibreSSL Test Root CA 2
24-----BEGIN CERTIFICATE-----
25MIIDKjCCAhKgAwIBAgIJAOgRyzRdP4eSMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
26BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAyMB4XDTIwMDcxNDE4MjEwOVoXDTMw
27MDcxMjE4MjEwOVowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDIw
28ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC/oBAKIWc2I2YaZc0mNZPt
295EE+q4DcvuvW/gVNI20zIc4rIggM6AAIfxxn2AZWlJyUXjsfYa198vVXO7kO4CgC
30OBqpYfsYPp209SmxfEACa5TiV5/k3l3FEmBNq96iyPRVtMpPbB398uA949wrt/PS
31hKt5rwGjYDnchbo8utrDMW2oqh1dfgKw+YGTrA5YX+f1NilGZNeW7PgY8LDCcNK6
32SexS3fetzfuug7s7mj3MfMV6b3CM7ApijRg65zihV5GCVeLGKyUGw26Cz2cjLkDF
3324KxFkunD5Ildj+1Fi7CyOVv93zV1UfCR4+nOlzQrgTFONkFeMK0fSCRZCKwzp25
34AgMBAAGjYzBhMB0GA1UdDgQWBBTRqRt6h9xWpgm7GrxTrTvac3JicjAfBgNVHSME
35GDAWgBTRqRt6h9xWpgm7GrxTrTvac3JicjAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
36DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAfBaxTVYD8TpX7GIwBJzM44Pn
37jsO8UN+phDE12Pzo6dveC2HK5xXg/cryqbXvu+lAwPX0nNHAobXSZ4W0HhxixDbL
38h6m8XVIQRQNz3H98ISTTHlz33H7NTfZvfMisOHB8MikMq/TlhR3XC3vjNCgEN58s
39f+UU9aO/7WbqteSOxFBHlsXJIkFHzkXcscKy+xf3SKDSEwDAqv5deCgAarGPhvP4
403sukpL7xzAEKgmq7ww+3KvI3JAHRgmr30eel50GlUyY0kiEODX9S8mlr5f6eFM4X
41tue9CDPfUf+piEEF7IIMSXt7Ej+bN+WKNZrigOQY5onLMyD0mJ15mavuKh5fbw==
42-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/8a/bundle.pem b/src/regress/lib/libcrypto/certs/8a/bundle.pem
new file mode 100644
index 0000000000..937e91ff6a
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/8a/bundle.pem
@@ -0,0 +1,43 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 1
3subject= CN = LibreSSL Test Intermediate CA 1
4issuer= CN = LibreSSL Test Root CA 1
5-----BEGIN CERTIFICATE-----
6MIIDKDCCAhCgAwIBAgIDEAABMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNVBAMMH0xp
7YnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMTAwMTAxMDAwMDAwWhcN
8MjAwMTAxMDAwMDAwWjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNlcnZlciAx
9MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwbUYkCzTbWltqWfHtxLn
10h5Pb+LwCTOyt8oAC8O42Cn4zTxVJef9xhSSKOu5TtZyO0P8bzo9gGHg27tzlwTVw
11jaiJnlvke0KNbHHP0NL9yE/yTfToWVM0juMdAYGtCEtZGuNkId3FuVnvTbLQDPsL
12Zfh/UQMasgVWzR2wYa+9tU08EPeMZ+ApPWqTInvLJ2fVwR5+5+s+8vCDLf6cmhwx
13HFTZ6DCVWw8dcOlzFI2p9UPZiUnNslBTu3zkYyJXvD/euQYeahB5nES/KpafWR4R
14IkizDIE02z1SE7AURXor4RsTvEqZ+OAy8K6HeP1F9MsPwvuDmBGFwh89oQ9fHmwj
15ywIDAQABo2AwXjAdBgNVHQ4EFgQUssIMjjAg0nMmqql+iD8FCo0shXYwHwYDVR0j
16BBgwFoAUXhlGOSQv4iM05m4SOhKdakmYLRgwDAYDVR0TAQH/BAIwADAOBgNVHQ8B
17Af8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAGJPaWWsXuZ0nahIy6HyM5rnLnfL
18djFiUegFVW7ymxLkBIMGy2wvRQXXdP2L+vSkX9eh2Wk5bpU/w9kqWk1TYeHfEhwx
19az55TMdt7hbWB4/ATSUbxswx4oJxg6v7YHfUf/w6lUaqFwT/0sWPaDEzRW9xFfKT
20E3//8QVvPMTLDbc6k2Y1RfDqyjD+rLjYEKOzZmZk0czV4+W8P3M+ZgiUa6qHDX0x
21YApKZWgLM1OsAyYVPzoILJj5VkHsyax81CSHiCqPVGBUTLwZpxmgjNfKOvDa8q8K
225ij7oQh1ZyK6U7uwrhH8xdUzU1B8LtNLpOMBAUlgz9amShn/eJQFbr0Lldg=
23-----END CERTIFICATE-----
24-----BEGIN CERTIFICATE-----
25MIIDMjCCAhqgAwIBAgIJAIZjiC92oa9oMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
26BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjExMVoXDTMw
27MDcxMjE4MjExMVowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlh
28dGUgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANVDX6UguRAT
298Y/OUSa7cOVuFP6SyWpQqJ6XKNkJGK2jA5wmw7p3L+/Lf2JJJJqp6PxOk3xwmiEG
308meysFICIoRSu1mgxzuOg4lbZhSs7MelH+6eA5Sn1uyXlyB+nMTV6OitTwt/Rwbl
31k72mX/9lmw3qL63hWCXi4+5QtmgpHZgMS2RS2GFElqB6+s/qTCQzt54t1yldnpAe
32evzObNmzTMYh1pJFwY36j0lvro5gFN38pwu+t+EnUVtLWFXXL3fUWINoA9H9w631
332NYOoJCeSnmLSpr464bOj0zB4YLTHlqEb3UkQeUQ2TVedXx8tRbnwNUt4IAy4n52
34+3RVevONgMsCAwEAAaNjMGEwHQYDVR0OBBYEFF4ZRjkkL+IjNOZuEjoSnWpJmC0Y
35MB8GA1UdIwQYMBaAFIVPBBPldSz/kCrh6a4rofV8PYcEMA8GA1UdEwEB/wQFMAMB
36Af8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQB0pHTTTtroO1Kt
374fkAMqzBe7T6oThf+wc2weFEUxBLbgtwuXlqOJj6UE5NRcOjFhMYFYv3IN5lPd8N
38wm3DqD2L12cB1LI97Da9o/Es2kbQPCWfJ+IaDQd+Y5QZn45veMfmtjgh9WrEm5As
39ICZyrxDDouO+rDZc+s4ul5Ja61Qj5o75KX3+CrAwEQYXgycbRDfs8p3ovGt5/Qby
40oPo71Lso77XvDyPwhyj6mxm5SZTENEhs1D3fRPgq3+wU3rmoWCeaVKkjulWeluj2
41TQX/qvNlvCkyBoiumuhckFVpUy+qKaj8ewqihZWjc6SAPEgo/lpQ6HxIJrnnE2DN
42CFzR41nT
43-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/8a/roots.pem b/src/regress/lib/libcrypto/certs/8a/roots.pem
new file mode 100644
index 0000000000..fe4a7204cf
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/8a/roots.pem
@@ -0,0 +1,21 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJALVAIfvIgCtWMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjExMFoXDTMw
6MDcxMjE4MjExMFowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCowF3U+OJjLt4M3UA5vRHc
8DfFBtkRSJq7wIeN5nokyF/mC8ZPL64aPCBXc1bq2PvYevmTdNSopMMMuQvg6H8hB
9Tqyk08j/n6wrwcn0VOcrAI8megLQO63Cnno4R9HH4GNOgV+FM+owmtedX7g/p23o
10yADWnYvJxHuks4cDadWeG+aLUEewq2F8NgzsmDGqPrUuO9kkxOcj6CM4y45RlSUZ
11GZLG2HshD5zZLLqzD0vo/S1M2MI0y3mmnH2B2CDTmn9aj5uy7wAgNZWLyryv1DaO
12ZR2+0gpNDpqKaNsDw730mV7DQDdIrSVphN9X4OeFfomFdEd+gkqylsjlcqegZiGH
13AgMBAAGjYzBhMB0GA1UdDgQWBBSFTwQT5XUs/5Aq4emuK6H1fD2HBDAfBgNVHSME
14GDAWgBSFTwQT5XUs/5Aq4emuK6H1fD2HBDAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAmkC8hg51+OO4VuYoIQZraxr0
167xZ/JZM0MvdfM41/C8qMnLXbwnNppgRrBkWT8e+sbLxHEolxy3WTNxPDPo3ArTaN
17MEl1iym4N4KbEbd72PldTXU8YBEQkTHsu9gIipG/tjQewGhyhPX4ag2UiE9EOIqx
18IaQMeswXvJPL1oS7E3AsmJmFC818UJtYYAfH7oU2dOS4hoDGtn7DFB2Y54MTVVGO
198Q49CyR+N5a0rcnXPIR10Cs0j5zHXzTGayjtygYJV9fE2UGlLWaYJL/t4xtJlb3m
20gK3DlKTzKy98T4xRQsbbd9ipC8y4MoPeeVvxHAZ12fkPvxmsh+coyMAWhUMYVQ==
21-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/9a/bundle.pem b/src/regress/lib/libcrypto/certs/9a/bundle.pem
new file mode 100644
index 0000000000..d1aa7ba5d0
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/9a/bundle.pem
@@ -0,0 +1,43 @@
1subject= CN = LibreSSL Test Server 1
2issuer= CN = LibreSSL Test Intermediate CA 1
3subject= CN = LibreSSL Test Intermediate CA 1
4issuer= CN = LibreSSL Test Root CA 1
5-----BEGIN CERTIFICATE-----
6MIIDLjCCAhagAwIBAgIJAIZjiC92oa9pMA0GCSqGSIb3DQEBCwUAMCoxKDAmBgNV
7BAMMH0xpYnJlU1NMIFRlc3QgSW50ZXJtZWRpYXRlIENBIDEwHhcNMjAwNzE0MTgy
8MTEyWhcNMzAwNzEyMTgyMTEyWjAhMR8wHQYDVQQDDBZMaWJyZVNTTCBUZXN0IFNl
9cnZlciAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA08K1FHG5WxU7
10sj7KO+PmEi+hIm7i1K+HJEZrpTlfVjGegE5JjL6uSodB0ORak6YQ28WMDGzGUEC0
11tKBVhKQYIs/2UTPfMaddQoJhwlZOmV+SIWjEHXAr84ejJqfopRFVwCgXtSbDxOP7
128cnCxiUy5uitLC8xqLPrYFR+PG+BOQSE/IeVCt0yERkz48R1QgBCRZDolGOBBASh
13uEDRzAFsG/J4P5ojhKWVkRv3jcik+VwquoiyWaXOC/EfYgvZOnX24vi9EbwchDPR
14+PFMvrdYXmifLVHRVvnGRJqNS1cGDUfr7sYzkKtBy8pSaY6xbhqnkHc61D8abr8n
15ONFOGHpgwQIDAQABo2AwXjAdBgNVHQ4EFgQU5+Aawbpe/DzE9LBnxecBoDxbqy4w
16HwYDVR0jBBgwFoAUOALOsSPeTj8pZdxkwmt4tEJXiNMwDAYDVR0TAQH/BAIwADAO
17BgNVHQ8BAf8EBAMCB4AwDQYJKoZIhvcNAQELBQADggEBAJoIUMmO67EIgXLTzzwI
18J323W3yoPHrrix0gUtQCVhyc3c3Sf7w3R6O8iNPxKiN2LlutO493YHf+whO5DHzt
19R4xI4HKtAsTSSiniQh5Sr3bCM/yt5UF1OK519Pa/zoRjwhQa6Dpe4YWR/3cJNJ02
20K2aCvJyHKYm40U65X4gxVhGYCMFcbgOpZTtwNv0caKdtpfp95+EKdAa9xjb5jntg
21XiMRVO9ozFVywCZuzptL/WNCbiueBCt9NFLfAfDZIUaxi6rCSWbBxNcXfkcqKW1i
227Ca/RUlwcz60Is+g2+6LC6hRcPBgxtlInQACSCso8r80FKBAuW8grwFyhKqHgnca
234Yw=
24-----END CERTIFICATE-----
25-----BEGIN CERTIFICATE-----
26MIIDLDCCAhSgAwIBAgIDEAABMA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNVBAMMF0xp
27YnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTEwMDEwMTAwMDAwMFoXDTIwMDEwMTAw
28MDAwMFowKjEoMCYGA1UEAwwfTGlicmVTU0wgVGVzdCBJbnRlcm1lZGlhdGUgQ0Eg
29MTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALX6tUNKxG6QzMchRx+o
30rZVUwTIz7YAc7I0WMWydjsmp0y1YPafy5ax0TUNKgIjlh8gwcOUkfrsArE/y/Z8W
31HE+S/xEHo9X9k8GGWwu3L7DBIPkZNSQgqmHAi5YzYtZMyadq1KhvZbPWuk85gbLj
32afYv1MOHC9/IM32klap32+L1r54alFxw+TBGf+nflCu1epZ8ijF52cfd/PMf7ue7
33ozEH5AbABljXUPDV9siii9fx2ngZdOPaxV5/QLaLg2zRHUnNCDI1lxev2Jc8pYBJ
340ECRW5LYCQYb5Ph47FbDgGQboI3tfYw/7bKnxQeuqNNgPoE7NokQcfXnYXfSC/7R
35luUCAwEAAaNjMGEwHQYDVR0OBBYEFDgCzrEj3k4/KWXcZMJreLRCV4jTMB8GA1Ud
36IwQYMBaAFE4DZ3Nk7pV/aE5iSh/r5nx+Ly7wMA8GA1UdEwEB/wQFMAMBAf8wDgYD
37VR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4IBAQASUf2fHy1xxqa5mcQU14xZ
38Zt+3BBRt/pnX5hu2VM8jn8Yh8tFB1jRniG7zpDaAJYXWgs8eDtmEtssEgkVANQpH
39lmCwpfgJYPuBz7HYGJYJ9gfSZSm475a/BLG0dFgpMfP/YrJAee6cdM1lZhZrsLzB
409mG9zTgd4+mqVU4qlHsBGKdV2MKias9+EjBle7HfVnNUtLgTZybNHfXNsa1i/aGk
41z7AXQYWbTR6MaOXiRScphOyUMzFCoQ63yZdrgS03VROjP95vuU+JZVNZDFKVGfGv
42zdazkhH3U8jpVDJ4Hp750d5lRjHCK2/vHzQErLI5M0TFVv1VaIeLZtxfcEmzWIcQ
43-----END CERTIFICATE-----
diff --git a/src/regress/lib/libcrypto/certs/9a/roots.pem b/src/regress/lib/libcrypto/certs/9a/roots.pem
new file mode 100644
index 0000000000..556f47ddab
--- /dev/null
+++ b/src/regress/lib/libcrypto/certs/9a/roots.pem
@@ -0,0 +1,21 @@
1subject= CN = LibreSSL Test Root CA 1
2issuer= CN = LibreSSL Test Root CA 1
3-----BEGIN CERTIFICATE-----
4MIIDKjCCAhKgAwIBAgIJAKOA4OMK5yr3MA0GCSqGSIb3DQEBCwUAMCIxIDAeBgNV
5BAMMF0xpYnJlU1NMIFRlc3QgUm9vdCBDQSAxMB4XDTIwMDcxNDE4MjExMVoXDTMw
6MDcxMjE4MjExMVowIjEgMB4GA1UEAwwXTGlicmVTU0wgVGVzdCBSb290IENBIDEw
7ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDQ04U12hNbMcBuFu9CSSan
8Mke/Ftlp9ZOxrnr3YYP415gjbSyEbtlAVwlqPlZhl5eKIgx+48rDoYbWVuTYFxoy
9jkBJBv3ujSXv9fkHGWaKhAAI5nDuEWDLOIvLoh/GCqVPhfbC/NXZRrzWrW21ajqn
10KN9Zv1X8tJG7RmxVbLqbS6DSwSy2kSdGBf2S+IuDsWSkrVQo+B8LYFJrDt3bWCtC
11T8YCeDyvl/mr7JxBe8QX3VCsn/M4WT4vSOL/DAgZpGXhQ37OPXV8Pa3U4tonP8oi
12S+vddeIydk3kDz3e4fiGJmzXBO+XQ9XPMkvz2eJXWg4TXNdmsSqSRMj5tgZFapw3
13AgMBAAGjYzBhMB0GA1UdDgQWBBROA2dzZO6Vf2hOYkof6+Z8fi8u8DAfBgNVHSME
14GDAWgBROA2dzZO6Vf2hOYkof6+Z8fi8u8DAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud
15DwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAQEAy7u9ISg4XXtNc+5yI7zvsWPr
16JC+sa/sbWSxhPE1yG7VhRIitRwGYDkS9sTdHWVTGETo/TWQ1EFzjCsrQaLGvL4/a
171tgQ7jebfm2cBGI30gWd+fBolqvxAuirxZcK/LIGWNOibFOcz7sKvT3nh/fGcM5W
18XopuWUwZpyaYyVmUbHH3/+W9eqBxU0zlrhNq7thwXG8ip5g6WiHuThYTAPCNrmvV
19w2NuCzru0i9LvjT+6pGnZjZK/lI1nwsxNSd1MQaHIj5oV6l1sc/BlrBcTl2gk3lb
20xJqGM2RF1lX3Evl1kMsMHRFYlmWwME1k/BLa9CH3sQkF4rPgeQXZhgyUlCRHVQ==
21-----END CERTIFICATE-----