Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(837)

Unified Diff: net/third_party/nss/patches/peercertchain2.patch

Issue 111853013: Update net/third_party/nss to NSS 3.15.4. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Update the comment in sslenum.c for the two CHACHA20 cipher suites Created 6 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « net/third_party/nss/patches/peercertchain.patch ('k') | net/third_party/nss/patches/renegoscsv.patch » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/third_party/nss/patches/peercertchain2.patch
===================================================================
--- net/third_party/nss/patches/peercertchain2.patch (revision 242942)
+++ net/third_party/nss/patches/peercertchain2.patch (working copy)
@@ -1,107 +0,0 @@
-Index: net/third_party/nss/ssl/ssl.h
-===================================================================
---- net/third_party/nss/ssl/ssl.h (revision 225295)
-+++ net/third_party/nss/ssl/ssl.h (working copy)
-@@ -434,6 +434,15 @@
- */
- SSL_IMPORT CERTCertificate *SSL_PeerCertificate(PRFileDesc *fd);
-
-+/*
-+** Return the certificates presented by the SSL peer. If the SSL peer
-+** did not present certificates, return NULL with the
-+** SSL_ERROR_NO_CERTIFICATE error. On failure, return NULL with an error
-+** code other than SSL_ERROR_NO_CERTIFICATE.
-+** "fd" the socket "file" descriptor
-+*/
-+SSL_IMPORT CERTCertList *SSL_PeerCertificateChain(PRFileDesc *fd);
-+
- /* SSL_PeerStapledOCSPResponses returns the OCSP responses that were provided
- * by the TLS server. The return value is a pointer to an internal SECItemArray
- * that contains the returned OCSP responses; it is only valid until the
-@@ -463,18 +472,6 @@
- SSLKEAType kea);
-
- /*
--** Return references to the certificates presented by the SSL peer.
--** |maxNumCerts| must contain the size of the |certs| array. On successful
--** return, |*numCerts| contains the number of certificates available and
--** |certs| will contain references to as many certificates as would fit.
--** Therefore if |*numCerts| contains a value less than or equal to
--** |maxNumCerts|, then all certificates were returned.
--*/
--SSL_IMPORT SECStatus SSL_PeerCertificateChain(
-- PRFileDesc *fd, CERTCertificate **certs,
-- unsigned int *numCerts, unsigned int maxNumCerts);
--
--/*
- ** Authenticate certificate hook. Called when a certificate comes in
- ** (because of SSL_REQUIRE_CERTIFICATE in SSL_Enable) to authenticate the
- ** certificate.
-Index: net/third_party/nss/ssl/sslauth.c
-===================================================================
---- net/third_party/nss/ssl/sslauth.c (revision 225295)
-+++ net/third_party/nss/ssl/sslauth.c (working copy)
-@@ -28,38 +28,43 @@
- }
-
- /* NEED LOCKS IN HERE. */
--SECStatus
--SSL_PeerCertificateChain(PRFileDesc *fd, CERTCertificate **certs,
-- unsigned int *numCerts, unsigned int maxNumCerts)
-+CERTCertList *
-+SSL_PeerCertificateChain(PRFileDesc *fd)
- {
- sslSocket *ss;
-- ssl3CertNode* cur;
-+ CERTCertList *chain = NULL;
-+ CERTCertificate *cert;
-+ ssl3CertNode *cur;
-
- ss = ssl_FindSocket(fd);
- if (!ss) {
- SSL_DBG(("%d: SSL[%d]: bad socket in PeerCertificateChain",
- SSL_GETPID(), fd));
-- return SECFailure;
-+ return NULL;
- }
-- if (!ss->opt.useSecurity)
-- return SECFailure;
--
-- if (ss->sec.peerCert == NULL) {
-- *numCerts = 0;
-- return SECSuccess;
-+ if (!ss->opt.useSecurity || !ss->sec.peerCert) {
-+ PORT_SetError(SSL_ERROR_NO_CERTIFICATE);
-+ return NULL;
- }
--
-- *numCerts = 1; /* for the leaf certificate */
-- if (maxNumCerts > 0)
-- certs[0] = CERT_DupCertificate(ss->sec.peerCert);
--
-+ chain = CERT_NewCertList();
-+ if (!chain) {
-+ return NULL;
-+ }
-+ cert = CERT_DupCertificate(ss->sec.peerCert);
-+ if (CERT_AddCertToListTail(chain, cert) != SECSuccess) {
-+ goto loser;
-+ }
- for (cur = ss->ssl3.peerCertChain; cur; cur = cur->next) {
-- if (*numCerts < maxNumCerts)
-- certs[*numCerts] = CERT_DupCertificate(cur->cert);
-- (*numCerts)++;
-+ cert = CERT_DupCertificate(cur->cert);
-+ if (CERT_AddCertToListTail(chain, cert) != SECSuccess) {
-+ goto loser;
-+ }
- }
-+ return chain;
-
-- return SECSuccess;
-+loser:
-+ CERT_DestroyCertList(chain);
-+ return NULL;
- }
-
- /* NEED LOCKS IN HERE. */
« no previous file with comments | « net/third_party/nss/patches/peercertchain.patch ('k') | net/third_party/nss/patches/renegoscsv.patch » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698