Index: net/third_party/nss/ssl/sslinfo.c |
diff --git a/net/third_party/nss/ssl/sslinfo.c b/net/third_party/nss/ssl/sslinfo.c |
index c1c3fd7b50133d42a9672b0744ab8ff39b0665cc..2599ef173ab6a60505a130e94b6177f719c6522e 100644 |
--- a/net/third_party/nss/ssl/sslinfo.c |
+++ b/net/third_party/nss/ssl/sslinfo.c |
@@ -54,6 +54,27 @@ ssl_GetCompressionMethodName(SSLCompressionMethod compression) |
} |
} |
+SECStatus |
+SSL_GetChannelUsername(PRFileDesc *fd, SECItem *user) |
+{ |
+ SECItem * username; |
+ sslSocket * ss; |
+ |
+ ss = ssl_FindSocket(fd); |
+ if (!ss) { |
+ SSL_DBG(("%d: SSL[%d]: bad socket in SSL_GetChannelUsername", |
+ SSL_GETPID(), fd)); |
+ return SECFailure; |
+ } |
+ |
+ if (ss->sec.userName == NULL) { |
+ PORT_SetError(SEC_ERROR_INVALID_ARGS); |
+ return SECFailure; |
+ } |
+ |
+ return SECITEM_CopyItem(NULL, user, ss->sec.userName); |
+} |
+ |
SECStatus |
SSL_GetChannelInfo(PRFileDesc *fd, SSLChannelInfo *info, PRUintn len) |
{ |
@@ -141,6 +162,9 @@ SSL_GetChannelInfo(PRFileDesc *fd, SSLChannelInfo *info, PRUintn len) |
#define K_KEA "KEA", kt_kea |
#define K_ECDH "ECDH", kt_ecdh |
#define K_ECDHE "ECDHE", kt_ecdh |
+#define K_SRP "SRP", ssl_kea_srp |
+#define K_SRP_RSA "SRP_RSA", ssl_kea_srp_rsa |
+#define K_SRP_DSS "SRP_DSS", ssl_kea_srp_dss |
#define C_SEED "SEED", calg_seed |
#define C_CAMELLIA "CAMELLIA", calg_camellia |
@@ -201,6 +225,17 @@ static const SSLCipherSuiteInfo suiteInfo[] = { |
{0,CS(SSL_RSA_WITH_NULL_SHA), S_RSA, K_RSA, C_NULL,B_0, M_SHA, 0, 1, 0, }, |
{0,CS(SSL_RSA_WITH_NULL_MD5), S_RSA, K_RSA, C_NULL,B_0, M_MD5, 0, 1, 0, }, |
+/* SRP cipher suites */ |
+{0,CS(TLS_SRP_SHA_WITH_3DES_EDE_CBC_SHA), S_KEA, K_SRP, C_3DES,B_3DES,M_SHA, 0, 0, 0, }, |
+{0,CS(TLS_SRP_SHA_RSA_WITH_3DES_EDE_CBC_SHA), S_KEA, K_SRP_RSA, C_3DES,B_3DES,M_SHA, 0, 0, 0, }, |
+{0,CS(TLS_SRP_SHA_DSS_WITH_3DES_EDE_CBC_SHA), S_KEA, K_SRP_DSS, C_3DES,B_3DES,M_SHA, 0, 0, 0, }, |
+{0,CS(TLS_SRP_SHA_WITH_AES_128_CBC_SHA), S_KEA, K_SRP, C_AES, B_128, M_SHA, 0, 0, 0, }, |
+{0,CS(TLS_SRP_SHA_RSA_WITH_AES_128_CBC_SHA), S_KEA, K_SRP_RSA, C_AES, B_128, M_SHA, 0, 0, 0, }, |
+{0,CS(TLS_SRP_SHA_DSS_WITH_AES_128_CBC_SHA), S_KEA, K_SRP_DSS, C_AES, B_128, M_SHA, 0, 0, 0, }, |
+{0,CS(TLS_SRP_SHA_WITH_AES_256_CBC_SHA), S_KEA, K_SRP, C_AES, B_256, M_SHA, 0, 0, 0, }, |
+{0,CS(TLS_SRP_SHA_RSA_WITH_AES_256_CBC_SHA), S_KEA, K_SRP_RSA, C_AES, B_256, M_SHA, 0, 0, 0, }, |
+{0,CS(TLS_SRP_SHA_DSS_WITH_AES_256_CBC_SHA), S_KEA, K_SRP_DSS, C_AES, B_256, M_SHA, 0, 0, 0, }, |
+ |
#ifdef NSS_ENABLE_ECC |
/* ECC cipher suites */ |
{0,CS(TLS_ECDH_ECDSA_WITH_NULL_SHA), S_ECDSA, K_ECDH, C_NULL, B_0, M_SHA, 0, 0, 0, }, |