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