From: Nikos Mavrogiannopoulos Date: Wed, 19 Feb 2014 14:22:19 +0000 (+0100) Subject: Added tests for name constraints addition. X-Git-Tag: gnutls_3_3_0pre0~135 X-Git-Url: http://git.ipfire.org/gitweb/?a=commitdiff_plain;h=fda4d0107e2b6f476c0b2be1c19751cc4d79430b;p=thirdparty%2Fgnutls.git Added tests for name constraints addition. --- diff --git a/tests/chainverify.c b/tests/chainverify.c index 7c104f74fb..751fffac92 100644 --- a/tests/chainverify.c +++ b/tests/chainverify.c @@ -49,6 +49,269 @@ static time_t mytime(time_t * t) /* *INDENT-OFF* */ +static const char *nc_bad1[] = { +"-----BEGIN CERTIFICATE-----\n" +"MIIDiTCCAkGgAwIBAgIMUwS5Fgr3eOV9V76jMA0GCSqGSIb3DQEBCwUAMA8xDTAL\n" +"BgNVBAMTBENBLTEwIhgPMjAxNDAyMTkxNDAwNTRaGA85OTk5MTIzMTIzNTk1OVow\n" +"EzERMA8GA1UEAxMIc2VydmVyLTIwggFSMA0GCSqGSIb3DQEBAQUAA4IBPwAwggE6\n" +"AoIBMQDBzpbdv7dod/G5JB6eYBtXrvKVibK+qpOlbfS0arSphkyLKDF0341yXAGF\n" +"7ia6yZz2udrzfKdcsdFzsDyByBxsneLtiUYn4WLwcaqFuoLy8AR4jOgDiPU95+bf\n" +"f8iw1BSnNEbFvshWECY3TyceLxA3De+w7cxgiie3Q0aEkuw8dZ4+MSXeXe/je/S7\n" +"OdFY5dXP7iIiqdDlpnPCB6BTfLeUrWOAT4FWM0ngkMijeMEAbPCbTbFw93DeXd2B\n" +"eQPQ1+Qx/VLbzte3tMFbMVNcQARfaO7u4hEvFEe+QOttE0VH4FqgQdx775mWJ1Kl\n" +"eDa+Wf9g9+NhSGMLsJ9dE67bK5CKqC+Z3Ff0QWFAc9wD+yeR4+cCVc1dY/MvaULQ\n" +"Rn1GQIts5amjHyxJvWavfeVTj7sbAgMBAAGjfTB7MAwGA1UdEwEB/wQCMAAwGgYD\n" +"VR0RBBMwEYIPd3d3LmV4YW1wbGUuY29tMA8GA1UdDwEB/wQFAwMHoAAwHQYDVR0O\n" +"BBYEFIonB7QoBQsSXVVzggEQYQWf/rjQMB8GA1UdIwQYMBaAFJ+td6XNJkYpP6B/\n" +"VLp6TDmzEhqnMA0GCSqGSIb3DQEBCwUAA4IBMQB737uD1IwtlMPtjA34mprTcK9N\n" +"rdtWcM3DPBzO5S3ci3XdCn7q3mPjOr42Gvi+71vDdHGBzA7pnGSiJdShWhBvDUT/\n" +"cCng+pIGYZUyGlK90PJfOxUmJzt/V2WFZMz+cor238HaBu8rw9d7a5NO6qeCN1C0\n" +"mAWCKhtNhnvJuGb2hNCAOcJJ+x26Wdh3WBkXIdAQn1zYIxAbgC2RrlQE1YtiqWSh\n" +"orp5kYSqzLENP/XJFnJ5bTxxJIQvBAgn1ZG7Yewv+J5jiF6qePmapHQFebcmvTK+\n" +"AFFSBYl2QYhanBa9n7YW3IxxIA8ZApbO1XsViCYOUqvpBIbCAeelInKtcmapetfl\n" +"b++29Bug798FTrFL9b+KE1qfKRwyp7RRRyJXztuHY1ocio50W3TBrScbim9w\n" +"-----END CERTIFICATE-----\n", +"-----BEGIN CERTIFICATE-----\n" +"MIIDdTCCAi2gAwIBAgIBATANBgkqhkiG9w0BAQsFADAPMQ0wCwYDVQQDEwRDQS0w\n" +"MCIYDzIwMTQwMjE5MTQwMDU0WhgPOTk5OTEyMzEyMzU5NTlaMA8xDTALBgNVBAMT\n" +"BENBLTEwggFSMA0GCSqGSIb3DQEBAQUAA4IBPwAwggE6AoIBMQCwgr6+sQUmsLMy\n" +"YZFM02dZAKR2H/ApcVDN/q+LdWATtNs/WHnLtGGB+BGszc3cvOhf3t8kevPcGpD8\n" +"oeQLUCvHedZiWJDfIMg5IoI1nDg7AZ3LUckFp+bRuLzmadn+yLY1U0FMT6YcNNW8\n" +"pNeef6padDZzVmu/9VxXRElfsoTvRixz95xf4s7+zr7ear7lQrol633RPg52XK8C\n" +"eCZfSNl5oNTLZXMrXoNXMbMx4xqXROB0A5VRUX/gVF1ya/aPiItsRCW8iE8i3+4F\n" +"B0WaUfXDjT9Ivo5k9IKbkiLtNXdc4Pe87lXSgD7IBS84ZxFCxGItz8JwahwOCOyb\n" +"E12OKaRx0w9RxwojetAdHhyxClU8CvYdg1zn+zYzYQRg4FPeYkjC5HRrDB3xpiYH\n" +"/A9jj+mdAgMBAAGjeDB2MA8GA1UdEwEB/wQFMAMBAf8wEgYDVR0eAQH/BAgwBqEE\n" +"MAKCADAPBgNVHQ8BAf8EBQMDBwQAMB0GA1UdDgQWBBSfrXelzSZGKT+gf1S6ekw5\n" +"sxIapzAfBgNVHSMEGDAWgBSOYIy4FnV8n5ISmXZFTnQtp/qC8DANBgkqhkiG9w0B\n" +"AQsFAAOCATEAEAWy+NlgXYXtAJnbkfiYoKtiJ/fKL5zds2KBM0MIDpgMAupM6Y8E\n" +"ax8kgOJiZK7HVvJZDJXv/+40ATCwPWkRN4jzPCIhNize1CiDZQGaqYQb6hFVQZcQ\n" +"O7ICQQnDiSXh4bCGxHFJmgA3rk46iJsAKZT9FVuD5UdnVtgqJq4BziKGl91TA+g4\n" +"u61nQlCXe/FCFdAce1gqw8r5ipFSOxJ5zJwgAS4PejNv/kFnsnR6T0aVpwd+p67u\n" +"mErRoAZWx/3ehjQjfPqATK3fetv+3dvN1dHdM7oMndfdd23XrM24Cx51q83CBqr+\n" +"TglZMAXXTcv+G7Iyljc+1F3WAq2Y1v+zNRHpMRlCRhqAh0cFuo731E/1t1uViolb\n" +"okHo5ttt4r16eXhQQeIc7gQmFswojpx7FQ==\n" +"-----END CERTIFICATE-----\n", +"-----BEGIN CERTIFICATE-----\n" +"MIIDQDCCAfigAwIBAgIBADANBgkqhkiG9w0BAQsFADAPMQ0wCwYDVQQDEwRDQS0w\n" +"MCIYDzIwMTQwMjE5MTQwMDUzWhgPOTk5OTEyMzEyMzU5NTlaMA8xDTALBgNVBAMT\n" +"BENBLTAwggFSMA0GCSqGSIb3DQEBAQUAA4IBPwAwggE6AoIBMQCuejonioMDhNat\n" +"68k+yaeiAF0ohTGwSiHNbXpn0JzfCs8/5PysNDQb+P8wPtuOcYhOCGRXM5ooOzjF\n" +"4s8hT9uFlI8TOlRw8a22PU3ehTYL8PY98tvftErPw9wndojBZ48sdhA7PeouBjlc\n" +"J1FSvjw4vB9EImiqwPz9uLNYkWUOcVUXQYb4iNjddbdh5/0vX2X01+L7O/vVcgiD\n" +"/EnSYsEM/8I4hRUQa7amTTTWPjk4liVBq6TLnAUCumVU2AvkHMkVRMYtvnHPecii\n" +"IRazQeYSPbBHCvhTOkccM5Osb8OntYxuIoR8l2ZjPgEMRrB6lgHr3uIxZKfn6JRi\n" +"YVOvPxZPsnWOAm17JuReyTo7kGh15vRvhmhZ7TeWITTDy3CTWvQLSmiSfe12+9F4\n" +"E4c2v0KLAgMBAAGjQzBBMA8GA1UdEwEB/wQFMAMBAf8wDwYDVR0PAQH/BAUDAwcE\n" +"ADAdBgNVHQ4EFgQUjmCMuBZ1fJ+SEpl2RU50Laf6gvAwDQYJKoZIhvcNAQELBQAD\n" +"ggExAHS8glOsOKVNI/syYmSpWnaahS6f/Fio5B/VVkQSVNPt9UwF+e6FXIlODiZL\n" +"lndhuaNqY1OUNiILXBWXxbwuEf6uPdm+nWdu5tlaaJlmyf5cMYx/ChvqUO5RmK8P\n" +"Dt6oEJBVfkJcqNQQoRYVuTLZvHe+uR87YIHUwBIqAF/2HJAioxpx5BywnLFIeP2A\n" +"WdzfY+Bh0j6e+gwGpX0sOpOob69G2naqHkhlbTgTboxT4qT22wzS+pvFDfXMxsZN\n" +"FvBLMRoCrg36Gqnt8Gt9srHg0iVvtM3OYBCwk+eMPfu1sA6wHfVQTP4DqY9nkHSi\n" +"VCJXNpWIcxuJbJYUiQdobJQc3EnXoI93atVsizbFIymMDh6pV+xBo3IGV/HfaJoi\n" +"yhagfeusFmAjySf3RCuF8eUsCFA=\n" +"-----END CERTIFICATE-----\n", +NULL +}; + +static const char *nc_bad2[] = { +"-----BEGIN CERTIFICATE-----\n" +"MIIDKTCCAhGgAwIBAgIMUwSneRSvmvAA3BCjMA0GCSqGSIb3DQEBCwUAMA8xDTAL\n" +"BgNVBAMTBENBLTMwIhgPMjAxNDAyMTkxMjQ1NDVaGA85OTk5MTIzMTIzNTk1OVow\n" +"EzERMA8GA1UEAxMIc2VydmVyLTQwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK\n" +"AoIBAQDgdtv7PLH1jsU7rhvPnIMEAvbC+7RWZcsI9qMVCP+UuiZ8tD/u8swrWGeW\n" +"3Dkbbhohw2dUJzUnCZ1uurb75qmzQvi23UC7j5d1NF0cei1u0P/yVgVauhBVBIy3\n" +"lJmr/sa7LYmuREln8XKOILnBdRGsVMhxzd0moyCxgPw5AkakEmUSSPFl5MuuoQM0\n" +"ESNIY2HX361nYSLrzbvH2XjpkXikBsd69OYXT2mQIVTlKJnGWbs1WIQnlxCXRF2x\n" +"dyrKC1yspa/V2zepAm6krwsYa350+askAtY8e3+cnawVcZ//c1Tv7Q/53WbMNdbi\n" +"k7XsiRekXJXEhoIygm2cL8TSzmr5AgMBAAGjfTB7MAwGA1UdEwEB/wQCMAAwGgYD\n" +"VR0RBBMwEYIPd3d3LmV4YW1wbGUuY29tMA8GA1UdDwEB/wQFAwMHoAAwHQYDVR0O\n" +"BBYEFFa85QCBsDo1OuhFL+X6CVVIeh3SMB8GA1UdIwQYMBaAFOfSQZTbK8EYUHmu\n" +"R372CIe1Bs5vMA0GCSqGSIb3DQEBCwUAA4IBAQABrWwW1PL1KpknTrUxHqXsSdsz\n" +"+Q8zOf/rl5m72DM/bp/Qk0bgU5qEK3OZorPLTN/r9pNqKj/boc9yadkmcsr0xvLZ\n" +"cIGwkwQ8dP9KazUUhBPboiTlXC7qGJU/HZ+9G/9MBHy/XVgkWX5OUH2mEIZS7I6E\n" +"aae2s+vAwYX4Y28L63WJHIyTMO6IavyBWBtFiKCZr5zNN39OhVYe/wRTMrhq7bxR\n" +"llaf9ys13p+ZPcQW2wzOLf42AhTr9A1p4SG2R0CRuaiOQvCWtGcW8JFcU+7LSlZQ\n" +"V4bP/+DffjugqGGQQptvaVsNRXv41f4Mdoy7wZYat/FqHBgtZrHXwjTl17yD\n" +"-----END CERTIFICATE-----\n", +"-----BEGIN CERTIFICATE-----\n" +"MIIDIjCCAgqgAwIBAgIBAzANBgkqhkiG9w0BAQsFADAPMQ0wCwYDVQQDEwRDQS0y\n" +"MCIYDzIwMTQwMjE5MTI0NTQ0WhgPOTk5OTEyMzEyMzU5NTlaMA8xDTALBgNVBAMT\n" +"BENBLTMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDdt0ClpQDZ55Jn\n" +"q1F6mEg2fXssdYDXeuTW2KbU6T4w8z5Ql0qRHPiKpJgnSLGOgGWQo1wcSJY7MjpG\n" +"VA8GvWSYaYR6pccFnNdll/VkTruy4CHFZgXU9sEMp+w6YPLu5KbkpOAI9EDO6yZr\n" +"aOiiCCVS1PKAFrpIU2Kq3cszmwamk3PgXnyfBLC09dBQ6ov3gSXtiuGkx0i0TeN4\n" +"YcWXhigDu20fvuWQxwvBVhvlDPqddu5qcWRRgyeXIT8R+ZO2+Et89RI6TqFPV+U8\n" +"8tzFEQkwPoGKAIupnFBmE68nR8DFdtDSXK4No9xZZtdiGHEOPQlGDOtodRDO7ZU8\n" +"AUg7KduvAgMBAAGjgYQwgYEwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHR4BAf8EEzAR\n" +"oQ8wDYILZXhhbXBsZS5jb20wDwYDVR0PAQH/BAUDAwcEADAdBgNVHQ4EFgQU59JB\n" +"lNsrwRhQea5HfvYIh7UGzm8wHwYDVR0jBBgwFoAUQypdhNSFXwuHeMlFONBWC797\n" +"XwswDQYJKoZIhvcNAQELBQADggEBAIJwTFDAZ/ru9DbaAo++2RJU3sykynrdN4D7\n" +"NP7HqAZc/O+wXjG3rhPz/j4ADjMo/jjPZGvWvC5gtQMB0WTcWR8R7n7kPIb3l9Ac\n" +"OSkjKFZbRiTDFeTklraMc5SBEMwU8DCvoHVfWqIAeAsx9BGkXot6KbLQFYSaL2Mb\n" +"+3OuqEKcBPECimMp1rY3acgs+xYkFlNMTsq2PTzfRysDPAfpv6RAD2vuQ1nFQURB\n" +"vXMmw9be5svlBv5j0kIiEYCgB1kO+HzNSje9F3xxrTvc+IzhRYn23yHHYflX8pWp\n" +"lic0qllEYK+abjatj25c9n1w5keBdiVYlSxr6F9NVwpYZTmxM5g=\n" +"-----END CERTIFICATE-----\n", +"-----BEGIN CERTIFICATE-----\n" +"MIIDIjCCAgqgAwIBAgIBAjANBgkqhkiG9w0BAQsFADAPMQ0wCwYDVQQDEwRDQS0x\n" +"MCIYDzIwMTQwMjE5MTI0NTQ0WhgPOTk5OTEyMzEyMzU5NTlaMA8xDTALBgNVBAMT\n" +"BENBLTIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDGE+FahQcoLS3M\n" +"obarta3FoLhnWZIHQmbVMqK+a7DNYDchv6DZs6yPokidgDcL0LsWa0MFLRw9qEsQ\n" +"fK8eTbck3sXT9PUePnJfeccaRICf8HirRLSoug5w+pqWCQupkLbVNBTgf+Sj2cI6\n" +"jBprmbrPGeilIIRVkZlQJztkTy0FaXuXsIqWxhaPYZrVsAQpD2S/b/ED7riOFbst\n" +"rDfR+9ZKLwDAXM0YZwMe2mKiwMrEuGRAVtlxyrUON6+JQbWh7fLUZvminA0LGDsq\n" +"jWTpvJn5FCZdlIn9aYr8gzunR14vHrffskxqA2SZcKaIxpM5FJrWpY6aT7vZn85C\n" +"5GDSTqLFAgMBAAGjgYQwgYEwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHR4BAf8EEzAR\n" +"oA8wDYILZXhhbXBsZS5jb20wDwYDVR0PAQH/BAUDAwcEADAdBgNVHQ4EFgQUQypd\n" +"hNSFXwuHeMlFONBWC797XwswHwYDVR0jBBgwFoAUZ+qKfar2spXn7Kf7vYBxQXTR\n" +"jvwwDQYJKoZIhvcNAQELBQADggEBAKFn26+aT+yius8A6UWKvX5ufkDUH3X6dUi5\n" +"gUc6tesLvzehwW5Q5kAp+3EA6j8yeLe6PIll9LdY2ry8JrUgPu+ApUCrJ/V0MFPi\n" +"Tg21FJXpP8+Z9wBhqItXDpRHrXY1ne6MTM3OoJkfaky4kp2gQjQ8CIo3xqk4htc7\n" +"1p0eSzBpu1a+mlMiwUsnFBCfqTiafmQwaDZOp8Cl8aTilugMCA998di35CC6D5eM\n" +"k4XITMbyob2+Piy1o/2GNSPtAmIncc/yZ0sTpdqQLzKZn9GojArReu3+dQtTP4XU\n" +"n3bhMgusV4mkBfIPZPdqkfEw4hCP9teEFd++xrR9iJA20ev+caE=\n" +"-----END CERTIFICATE-----\n", +"-----BEGIN CERTIFICATE-----\n" +"MIIDMTCCAhmgAwIBAgIBATANBgkqhkiG9w0BAQsFADAPMQ0wCwYDVQQDEwRDQS0w\n" +"MCIYDzIwMTQwMjE5MTI0NTQzWhgPOTk5OTEyMzEyMzU5NTlaMA8xDTALBgNVBAMT\n" +"BENBLTEwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDjC55IwBZ2SIxD\n" +"hNDjd/c/Ex6upabwLuocu3g5LW6fNhZP7fW4ZZ8eGripXUsQ0xkT4QkqST98vIzh\n" +"B0U3OOAJVyfHP2bQNkA2iewZRavo+O4YlTT7aDnSkGpx+2tEsKxvQAPB41TjjcaC\n" +"SlxTQj/Iij3xus9temIiJbbDuW1g694qtlQZmMElkfvLaRw9P4qqPtIn1S19tWnZ\n" +"TH2IJF6MB8iJghyIJsZ4mRXywIf3B3vXgmSAj7uBQBPnDaUXULC5HtZ+EC+Gi4Wx\n" +"JHr28fUUDvj+smSUydD8rvIJnH7V8b3BwX0HzvxjCY8bJeUcv9Px7P+98aNPZFXT\n" +"MRb0vjEnAgMBAAGjgZMwgZAwDwYDVR0TAQH/BAUwAwEB/zAsBgNVHR4BAf8EIjAg\n" +"oR4wDYILZXhhbXBsZS5uZXQwDYILZXhhbXBsZS5vcmcwDwYDVR0PAQH/BAUDAwcE\n" +"ADAdBgNVHQ4EFgQUZ+qKfar2spXn7Kf7vYBxQXTRjvwwHwYDVR0jBBgwFoAUugqZ\n" +"Ywh0FVP0vSv6j/AVcrNERRcwDQYJKoZIhvcNAQELBQADggEBAGKTyzBjwcnnYemJ\n" +"Hc/W6dvnPTeQgLhBSVHlVbC00OPLduPo+SJXdct6h9Qmh5k8beX4pPW8luC/MwJL\n" +"1gE34RorZdiEGai0VfB1gZEc0b3tIYmSzElBIJ8eCXu52s09Mrzf++D+uAZkOjdv\n" +"OHk/qbHNFmQ4dnM0xBMigz+OgeMuCd3GekHhXhI5IP8Qp7L+mfrt9f3xG0wb+kEl\n" +"echr2S2BCsNXJdlTnCM4yseBTezvBZ1fZzJrY7sL/SQKG/qBOwzNr0f8ZEBabCHp\n" +"MxvDCac6xF+MjLYjgL46J07778SS9pMbTsSkPUR24RVPefhvq2ZfatB677LEuLi/\n" +"O6Wgw5U=\n" +"-----END CERTIFICATE-----\n", +"-----BEGIN CERTIFICATE-----\n" +"MIIC4DCCAcigAwIBAgIBADANBgkqhkiG9w0BAQsFADAPMQ0wCwYDVQQDEwRDQS0w\n" +"MCIYDzIwMTQwMjE5MTI0NTQzWhgPOTk5OTEyMzEyMzU5NTlaMA8xDTALBgNVBAMT\n" +"BENBLTAwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCqxhEkeOnCDeFO\n" +"YVDGaKLLMld5jjcBTM5e5l76tD4JoZidOg6hz2h9T6eLTXEcNW+x9kCThjTHF39i\n" +"CE3w5yCiRJHDETD8RRIgKlt6AOSmpNhDLUb0C/0FxSQkCITYcoyrHYdDN+jcroCC\n" +"hDnOt0hPoaJYAZRAXI582GJ57UZl4o/Yk88333Z+4m8+jKNHIrmaMkxnI9u5pULR\n" +"S9M13YZNEEUKP0qmy/3E++0qXlHXtZfrkRsr1F3GtY1zabfJmUspwHLTrcfnuwKN\n" +"i2NCA+eHaEKbDS4cmWtSR8vpXWpUmJ/MSGGh1QFTSnTKc2/J66FxspXQauqon38x\n" +"1j0/6ktTAgMBAAGjQzBBMA8GA1UdEwEB/wQFMAMBAf8wDwYDVR0PAQH/BAUDAwcE\n" +"ADAdBgNVHQ4EFgQUugqZYwh0FVP0vSv6j/AVcrNERRcwDQYJKoZIhvcNAQELBQAD\n" +"ggEBAFRd7pezulfpZ0MjWxHa6ex7ZB/7azvJ9Guzl5rPoRw8dGXIX+61GZ59inj3\n" +"00dZy2i8EZzsceihBQeCAxa95hkZsW+LnnqjylIczrj94elkRZI7+rKtQXDmhvQM\n" +"VnSXgY0zLZ4e6ykZuW9JpltznlMZ980WcXlqEtAnVUCyVuW9gjO/nPnvAeZrGB51\n" +"bLTu6yisTIGTl0YcYi0GbYiFQwB0FsKiVONu3jcdrxs6J9ER6+l53q6OymgqmR29\n" +"UPRDV/0PawPjFKisFO06AEttjuAMBHp8oVgCmqKy5vAxPNXSBk7Cj2SgqBOcUDBQ\n" +"38485vMMQIMGetTHVODGUrx88+M=\n" +"-----END CERTIFICATE-----\n", +NULL +}; + +static const char *nc_good[] = { +"-----BEGIN CERTIFICATE-----\n" +"MIIDKTCCAhGgAwIBAgIMUwSn0zQhAl6M9tcWMA0GCSqGSIb3DQEBCwUAMA8xDTAL\n" +"BgNVBAMTBENBLTMwIhgPMjAxNDAyMTkxMjQ3MTVaGA85OTk5MTIzMTIzNTk1OVow\n" +"EzERMA8GA1UEAxMIc2VydmVyLTQwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK\n" +"AoIBAQCuh+z1GAGt/hg+PaqXWPT+7uTzm3H3OoeEXqc6C5lVq3hxJ/FXhBmdeAuU\n" +"CL8TAeFWl0axBx/JW+5PUpAsi34fWg6ntCnu3Nf/vuK47Mikno9jkOZtSYtzl7eE\n" +"b/Wawj+GYigo4anUNmyOMhmNZtciOScxV3XozKsAGA9a9jRwmIoTVsRPx8XPiGRY\n" +"jqKf0FgjW2dQ6unE/l5NPMftk6rgI/AqgtEmwZDnJVjSSjssomSzj8fcqLexzxpX\n" +"panz3YW+1VK4FvHxc3d5wOxTGh7YvS1c60hME9VafF5PITNjQR2Xw7ckD3sNeX79\n" +"Fw9cMLdqHOH/OM7YKhG7Z0rCEOttAgMBAAGjfTB7MAwGA1UdEwEB/wQCMAAwGgYD\n" +"VR0RBBMwEYIPd3d3LmV4YW1wbGUuY29tMA8GA1UdDwEB/wQFAwMHoAAwHQYDVR0O\n" +"BBYEFN8ZiOy1DE22b9ntdV9FTfGv24P+MB8GA1UdIwQYMBaAFFvNPTPRA3lbnpz0\n" +"LNWkX6XWr6HDMA0GCSqGSIb3DQEBCwUAA4IBAQAn5jt+vV+/AaEqBuYq3kulLzkO\n" +"EdjMWFDoc/kOIWFtxek61gNo9UaddIwK3YCO5rF/9UwXnoz5FihUoTkUPwn5rcmD\n" +"IbGiS1KbqwwkGPBa+LevFuXUha1v/6pOo5tmHJnSBHesqw6WgAc/l12PSQOt4m69\n" +"z3C+td1ZZqDaJXo6ZCJdupLashJzPtN/swMHDA4tDwhMSacrIjuXqPuPouhM1h4+\n" +"6QN2E6W8S3UALFbQoCiUEtuXhzTT6WeyPr/vc0Ic+PIgAoYjFuTjBOhH7zixktLI\n" +"snqmVIkaL15fr0UNfc1BKbDhgMk11Ggg+HvASxIWsxTKMyay/wRaUBpQGoCj\n" +"-----END CERTIFICATE-----\n", +"-----BEGIN CERTIFICATE-----\n" +"MIIDIjCCAgqgAwIBAgIBAzANBgkqhkiG9w0BAQsFADAPMQ0wCwYDVQQDEwRDQS0y\n" +"MCIYDzIwMTQwMjE5MTI0NzE1WhgPOTk5OTEyMzEyMzU5NTlaMA8xDTALBgNVBAMT\n" +"BENBLTMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDwB+ra5HyuxFIq\n" +"C61gqNqmK5ooY7juclsAfhZ5AmdALJHibpVIU89lEhHSJByh+hgAYvG47uRoGZoe\n" +"R7OWWqKovSi6qPgRZJ+6esIwijnSk+YzBSkCsK6WWEpyMkQ5kSLy0+UioAScI1Kl\n" +"LoUWCKE/vvXb0FKH4929w13ufLTfgnSqfOmgR2c4zYqhSJBfKWETLc0lkpvGIlt3\n" +"84Wlr2xdpHeASQt0N7+LvziruzBmdSaHfgO91FxtSUGS2RE2s8xSDhFBmNjjygEz\n" +"62oUYHjyztwlIeGqKjuf2DD4/nQGMrJxLhrrHICGlmVq2yeSoriZpR6lvtQAg45E\n" +"qaZFyIgNAgMBAAGjgYQwgYEwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHR4BAf8EEzAR\n" +"oA8wDYILZXhhbXBsZS5jb20wDwYDVR0PAQH/BAUDAwcEADAdBgNVHQ4EFgQUW809\n" +"M9EDeVuenPQs1aRfpdavocMwHwYDVR0jBBgwFoAUYa0SPy1Augq0D4z9KkxXSwGd\n" +"aLAwDQYJKoZIhvcNAQELBQADggEBAFrEJlcXOiV8/XdpYbX0v1d2VWzROTgDrHoG\n" +"CQ7QcQke5iM85J6kBcidHPE2Joa6N7a+K3rZy6NeODoCi19k5upBGYdPmqAy3RyM\n" +"4Loh4f8GGMDXWR2e9iNu1CoF0UEh6mYslWNELvbCKBNZMbC7i1fS5LnEVydsT3X6\n" +"CHpGSPvE/ouDyzNQZrb8CZFFn+t6Oa1tCLiCHHAjcHlbxJbMd9cmUAxranGGBfCZ\n" +"UuIMHmxXRzcMEmiIU+1GsE3aEUdMKCN158QhoKRSsdG0wGWAo+3KK3N5ID0ASufa\n" +"lj9Lx0zGnBoNWwSfzspyZ9c/e5jizSRnkETKERGfQNG9Zm9/CTQ=\n" +"-----END CERTIFICATE-----\n", +"-----BEGIN CERTIFICATE-----\n" +"MIIDATCCAemgAwIBAgIBAjANBgkqhkiG9w0BAQsFADAPMQ0wCwYDVQQDEwRDQS0x\n" +"MCIYDzIwMTQwMjE5MTI0NzE1WhgPOTk5OTEyMzEyMzU5NTlaMA8xDTALBgNVBAMT\n" +"BENBLTIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCyvjWWVcORUI1M\n" +"9IwACxbTQGzVLyWZunx9Ui+RgGjbSuQxbXopW+ElXWCGHYbegflU95zZf2MtsTam\n" +"6yttESx5rULpEMAvaSV6rjkJEZtc0GN8AHMmCZnDXEqJQenNZOWuNEhquBCGifeD\n" +"GV6jAGvpkuN7p2iPBLVn74/ta9Vi8I0ZcNlfLkJcjIwOOldJ8Uz7DtZuBWnkEqz3\n" +"Pu5pmVfP65gFJFFCMe5I0nVgwSJye2VF2PEW977Q9yBTbC8wHESQtyvAcYWm0b5S\n" +"IeRpN6rPNzS0OE1foBN+JqXhE6gEw7sgtfVixvsSXVlPUFADqJZ+TVXndAbdUOIw\n" +"ixFKNODDAgMBAAGjZDBiMA8GA1UdEwEB/wQFMAMBAf8wDwYDVR0PAQH/BAUDAwcE\n" +"ADAdBgNVHQ4EFgQUYa0SPy1Augq0D4z9KkxXSwGdaLAwHwYDVR0jBBgwFoAU7wb/\n" +"A8DjHcoff+5iq40XgqAnruUwDQYJKoZIhvcNAQELBQADggEBAFCmGqITk+aW16Ua\n" +"hrtHj2vHPVUyCjfVT3CCRSmUzRZdL/XdeVhL4Bdoj7ebx6JCjewEbm/zdHMl710X\n" +"HDTHU2ixkPF0uBcr8pop6joa+qe8c+QwI4hgXUSwjRXjJIVunHPy8zzCKJWj/BTf\n" +"bWuDAkFiIBlW1jDzRh1w3gS0e5Ewx/U9itICJf/OXeCCmOQw+eERFzgfHTXBCDZQ\n" +"XJ7lJ7md3Oow/DUMrKfO6EGJYDEpAqVsO+TCONQ0OIXRMS0WXYm0Q1qkAaEd3Rfo\n" +"nU0hoTQwOECbxELG3Acu5zURPpZY51MooupMw0uoWBhSew40Crw/THvWVtZzO08Q\n" +"Z1hjbl8=\n" +"-----END CERTIFICATE-----\n", +"-----BEGIN CERTIFICATE-----\n" +"MIIDATCCAemgAwIBAgIBATANBgkqhkiG9w0BAQsFADAPMQ0wCwYDVQQDEwRDQS0w\n" +"MCIYDzIwMTQwMjE5MTI0NzE0WhgPOTk5OTEyMzEyMzU5NTlaMA8xDTALBgNVBAMT\n" +"BENBLTEwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC5fZ/i4x9RaEPc\n" +"NIY260dhNdaVZkBztAPSyDBZhTBXIRRiJwI3rkQvLayfVLMbovVcNl0evsfliI50\n" +"0EoQyOhaV2hhoUzCQhdfyW4Cg0AiUJ2nARCIyMDBybD4sVEaHTEcrJaYfR6X2+1R\n" +"Fk3pvN2ub0zBxdG8mvwMKiP8ZoApzZzZovu1kzgiBRXfTczBDlCyJrvfF8E6GMxk\n" +"lDRgy7M56sOyXjSPEcvL99WWho5zKgRoQ9z/PWtqpXzfDJ1947yKs2gGGAEKPeQ0\n" +"UnhtCvFGW29FINQGE6GVZ0m32babWCFkvZL9bXH0fH95ulsD6pZONPl1EoT0eSr9\n" +"bw6uDTf3AgMBAAGjZDBiMA8GA1UdEwEB/wQFMAMBAf8wDwYDVR0PAQH/BAUDAwcE\n" +"ADAdBgNVHQ4EFgQU7wb/A8DjHcoff+5iq40XgqAnruUwHwYDVR0jBBgwFoAUJSoB\n" +"Zx+Bq4giBE6WypFMma0bnkUwDQYJKoZIhvcNAQELBQADggEBAInI3xPeQ05Ls78i\n" +"kxytkUKaFZpUSPLPt2utI++eyl9CaoPaejU9JdIG9bWbvfrY6C0qrPSNbfQ3O0MK\n" +"KJREBBvsdlRY1O20k06nBGxY5hZ+yRRb4tYqoIamHmOn3Giq45K8u4Df6umgUARZ\n" +"IEBGDssqPoNS+MDIi+GBT9iro/yRfqBfKxj6dRa5+4G6yTy9tMHH1wp3SLeSAn/4\n" +"6F7nsW6MFbQVAetLgQDCo8hZYSXJuMd6hShtlduhKkAuIM/HpjMKMvw4+8iGpjYt\n" +"hBYRoD2xtbsZiTv9agtD8q0H2n0lCz9vK6t0cwFVy5K5zqT1h1ZDXFA0IFlgNKpP\n" +"WbO2kF4=\n" +"-----END CERTIFICATE-----\n", +"-----BEGIN CERTIFICATE-----\n" +"MIIC4DCCAcigAwIBAgIBADANBgkqhkiG9w0BAQsFADAPMQ0wCwYDVQQDEwRDQS0w\n" +"MCIYDzIwMTQwMjE5MTI0NzE0WhgPOTk5OTEyMzEyMzU5NTlaMA8xDTALBgNVBAMT\n" +"BENBLTAwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDz3ju9uSZcNTQM\n" +"dxAOa6UAY3O5ljCqx751te/+nz1Mx0/i9mjuTstq03987YPlDDAdDtW30TQje8J8\n" +"sMkVMnnMpmqxEjfi71wIS29hQtWH5j1oTs/0d8M0LtdZp9dU+BEZlpYIZSj7vvCt\n" +"TeBJjpBC/AR8LbM8+gC2BxxT0wXgEIP1It3O5QoaKhRhs7SlD6RNapaQjWrNDE0q\n" +"loORFMZawncaVS84j+qiD+2dBE4XnM2o7ZLjOwVr5Xxy8yGzW1vucGlcq7ecLRsV\n" +"qZqOZ3rBwj6gNnGtVdUoapCKMMB+KOOF+RM0Iaybj1CBT1ORwwIhXxvpJJNxbLqs\n" +"ee2nmV39AgMBAAGjQzBBMA8GA1UdEwEB/wQFMAMBAf8wDwYDVR0PAQH/BAUDAwcE\n" +"ADAdBgNVHQ4EFgQUJSoBZx+Bq4giBE6WypFMma0bnkUwDQYJKoZIhvcNAQELBQAD\n" +"ggEBAKIRanr7UScoQblASm+btwX3oXuXdYe/xT0z6rnKiU7K8jIeX4EcLTyfhp/0\n" +"v+DvMuVxddq71qXpuFxyTYXyjg6L8Ce0MnwnLz1Wd4uzBqolBq5IvS2PUoO4Ptwg\n" +"XHny7BIDGK4omMz+TatItmvS4r2Ww9UBbi/0MS6d/om0K8Used9s+fUGPjuMfyC0\n" +"y3i4Ba3q0G7x6351i9cSRY0cR9JTpVdyD6Jqd4fZq+0CA6/DgZQ6sInkUmSwDdSn\n" +"RaxXSFegk7++yOHkxODEn+Yf34KRI8RRr7ZsgfolN6b6MpwMymmhoZX3rteH00oX\n" +"NITdnUmuGlGTxXhiC02UeeZedTg=\n" +"-----END CERTIFICATE-----\n", +NULL +}; + static const char *v1_intermed_check[] = { "-----BEGIN CERTIFICATE-----\n" "MIIDGzCCAgOgAwIBAgIIUvuL4ymDgpEwDQYJKoZIhvcNAQELBQAwDjEMMAoGA1UE\n" @@ -948,8 +1211,10 @@ static struct GNUTLS_CERT_SIGNER_NOT_FOUND | GNUTLS_CERT_INVALID }, { "cacertrsamd5 short-cut ok", cacertrsamd5, &cacertrsamd5[1], 0, 0 }, - { "ecc cert ok", ecc_cert, &ecc_cert[1], - 0, 0 }, + { "ecc cert ok", ecc_cert, &ecc_cert[1], 0, 0 }, + { "name constraints chain ok", nc_good, &nc_good[4], GNUTLS_VERIFY_DISABLE_TIME_CHECKS, 0 }, + { "name constraints chain bad1", nc_bad1, &nc_bad1[2], GNUTLS_VERIFY_DISABLE_TIME_CHECKS, GNUTLS_CERT_INVALID | GNUTLS_CERT_SIGNER_CONSTRAINTS_FAILURE}, + { "name constraints chain bad2", nc_bad2, &nc_bad2[4], GNUTLS_VERIFY_DISABLE_TIME_CHECKS, GNUTLS_CERT_INVALID | GNUTLS_CERT_SIGNER_CONSTRAINTS_FAILURE}, { NULL, NULL, NULL, 0, 0} }; /* *INDENT-ON* */ @@ -1002,7 +1267,7 @@ void doit(void) ret = gnutls_x509_crt_init(&certs[j]); if (ret < 0) { fprintf(stderr, - "gnutls_x509_crt_init[%d,%d]: %s", + "gnutls_x509_crt_init[%d,%d]: %s\n", (int) i, (int) j, gnutls_strerror(ret)); exit(1); @@ -1018,8 +1283,8 @@ void doit(void) printf("done\n"); if (ret < 0) { fprintf(stderr, - "gnutls_x509_crt_import[%d,%d]: %s", - (int) i, (int) j, + "gnutls_x509_crt_import[%s,%d]: %s\n", + chains[i].name, (int) j, gnutls_strerror(ret)); exit(1); } @@ -1038,7 +1303,7 @@ void doit(void) ret = gnutls_x509_crt_init(&ca); if (ret < 0) { - fprintf(stderr, "gnutls_x509_crt_init: %s", + fprintf(stderr, "gnutls_x509_crt_init: %s\n", gnutls_strerror(ret)); exit(1); } @@ -1049,7 +1314,7 @@ void doit(void) ret = gnutls_x509_crt_import(ca, &tmp, GNUTLS_X509_FMT_PEM); if (ret < 0) { - fprintf(stderr, "gnutls_x509_crt_import: %s", + fprintf(stderr, "gnutls_x509_crt_import: %s\n", gnutls_strerror(ret)); exit(1); } @@ -1072,7 +1337,7 @@ void doit(void) &verify_status); if (ret < 0) { fprintf(stderr, - "gnutls_x509_crt_list_verify[%d,%d]: %s", + "gnutls_x509_crt_list_verify[%d,%d]: %s\n", (int) i, (int) j, gnutls_strerror(ret)); exit(1); }