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

Side by Side Diff: net/third_party/nss/ssl/sslsecur.c

Issue 6804032: Add TLS-SRP (RFC 5054) support Base URL: http://git.chromium.org/git/chromium.git@trunk
Patch Set: remove "httpsv" scheme, minor NSS/OpenSSL changes Created 9 years, 8 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « net/third_party/nss/ssl/sslproto.h ('k') | net/third_party/nss/ssl/sslsock.c » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Various SSL functions. 2 * Various SSL functions.
3 * 3 *
4 * ***** BEGIN LICENSE BLOCK ***** 4 * ***** BEGIN LICENSE BLOCK *****
5 * Version: MPL 1.1/GPL 2.0/LGPL 2.1 5 * Version: MPL 1.1/GPL 2.0/LGPL 2.1
6 * 6 *
7 * The contents of this file are subject to the Mozilla Public License Version 7 * The contents of this file are subject to the Mozilla Public License Version
8 * 1.1 (the "License"); you may not use this file except in compliance with 8 * 1.1 (the "License"); you may not use this file except in compliance with
9 * the License. You may obtain a copy of the License at 9 * the License. You may obtain a copy of the License at
10 * http://www.mozilla.org/MPL/ 10 * http://www.mozilla.org/MPL/
(...skipping 884 matching lines...) Expand 10 before | Expand all | Expand 10 after
895 ss->sec.hashcx = NULL; 895 ss->sec.hashcx = NULL;
896 } 896 }
897 897
898 SECITEM_CopyItem(0, &ss->sec.sendSecret, &os->sec.sendSecret); 898 SECITEM_CopyItem(0, &ss->sec.sendSecret, &os->sec.sendSecret);
899 if (os->sec.sendSecret.data && !ss->sec.sendSecret.data) 899 if (os->sec.sendSecret.data && !ss->sec.sendSecret.data)
900 goto loser; 900 goto loser;
901 SECITEM_CopyItem(0, &ss->sec.rcvSecret, &os->sec.rcvSecret); 901 SECITEM_CopyItem(0, &ss->sec.rcvSecret, &os->sec.rcvSecret);
902 if (os->sec.rcvSecret.data && !ss->sec.rcvSecret.data) 902 if (os->sec.rcvSecret.data && !ss->sec.rcvSecret.data)
903 goto loser; 903 goto loser;
904 904
905 SECITEM_CopyItem(0, ss->sec.userName, os->sec.userName);
906 if (os->sec.userName->data && !ss->sec.userName->data)
907 goto loser;
908 SECITEM_CopyItem(0, ss->sec.userPasswd, os->sec.userPasswd);
909 if (os->sec.userPasswd->data && !ss->sec.userPasswd->data)
910 goto loser;
911
912
905 /* XXX following code is wrong if either cx != 0 */ 913 /* XXX following code is wrong if either cx != 0 */
906 PORT_Assert(os->sec.readcx == 0); 914 PORT_Assert(os->sec.readcx == 0);
907 PORT_Assert(os->sec.writecx == 0); 915 PORT_Assert(os->sec.writecx == 0);
908 ss->sec.readcx = os->sec.readcx; 916 ss->sec.readcx = os->sec.readcx;
909 ss->sec.writecx = os->sec.writecx; 917 ss->sec.writecx = os->sec.writecx;
910 ss->sec.destroy = 0; 918 ss->sec.destroy = 0;
911 919
912 ss->sec.enc = os->sec.enc; 920 ss->sec.enc = os->sec.enc;
913 ss->sec.dec = os->sec.dec; 921 ss->sec.dec = os->sec.dec;
914 922
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
976 /* 984 /*
977 ** Called from SSL_ResetHandshake (above), and 985 ** Called from SSL_ResetHandshake (above), and
978 ** from ssl_FreeSocket in sslsock.c 986 ** from ssl_FreeSocket in sslsock.c
979 ** Caller should hold relevant locks (e.g. XmitBufLock) 987 ** Caller should hold relevant locks (e.g. XmitBufLock)
980 */ 988 */
981 void 989 void
982 ssl_DestroySecurityInfo(sslSecurityInfo *sec) 990 ssl_DestroySecurityInfo(sslSecurityInfo *sec)
983 { 991 {
984 ssl_ResetSecurityInfo(sec, PR_FALSE); 992 ssl_ResetSecurityInfo(sec, PR_FALSE);
985 993
994 if (sec->userName) {
995 SECITEM_FreeItem(sec->userName, PR_TRUE);
996 sec->userName = NULL;
997 }
998 if (sec->userPasswd) {
999 SECITEM_FreeItem(sec->userPasswd, PR_TRUE);
1000 sec->userPasswd = NULL;
1001 }
1002
986 PORT_ZFree(sec->writeBuf.buf, sec->writeBuf.space); 1003 PORT_ZFree(sec->writeBuf.buf, sec->writeBuf.space);
987 sec->writeBuf.buf = 0; 1004 sec->writeBuf.buf = 0;
988 1005
989 memset(sec, 0, sizeof *sec); 1006 memset(sec, 0, sizeof *sec);
990 } 1007 }
991 1008
992 /************************************************************************/ 1009 /************************************************************************/
993 1010
994 int 1011 int
995 ssl_SecureConnect(sslSocket *ss, const PRNetAddr *sa) 1012 ssl_SecureConnect(sslSocket *ss, const PRNetAddr *sa)
(...skipping 534 matching lines...) Expand 10 before | Expand all | Expand 10 after
1530 if (!ss) { 1547 if (!ss) {
1531 SSL_DBG(("%d: SSL[%d]: bad socket in SNISocketConfigHook", 1548 SSL_DBG(("%d: SSL[%d]: bad socket in SNISocketConfigHook",
1532 SSL_GETPID(), fd)); 1549 SSL_GETPID(), fd));
1533 return SECFailure; 1550 return SECFailure;
1534 } 1551 }
1535 1552
1536 ss->sniSocketConfig = func; 1553 ss->sniSocketConfig = func;
1537 ss->sniSocketConfigArg = arg; 1554 ss->sniSocketConfigArg = arg;
1538 return SECSuccess; 1555 return SECSuccess;
1539 } 1556 }
OLDNEW
« no previous file with comments | « net/third_party/nss/ssl/sslproto.h ('k') | net/third_party/nss/ssl/sslsock.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698