| Index: net/third_party/nss/patches/tlsunique.patch | 
| diff --git a/net/third_party/nss/patches/tlsunique.patch b/net/third_party/nss/patches/tlsunique.patch | 
| index 5b094a7c81150a4b6ab847466b7a77a83afa3bc5..ad4f09f332e3171915b0158c738c0afd2dd43011 100644 | 
| --- a/net/third_party/nss/patches/tlsunique.patch | 
| +++ b/net/third_party/nss/patches/tlsunique.patch | 
| @@ -1,7 +1,40 @@ | 
| -diff -pu a/nss/lib/ssl/ssl3con.c b/nss/lib/ssl/ssl3con.c | 
| ---- a/nss/lib/ssl/ssl3con.c	2014-01-17 17:59:03.242109996 -0800 | 
| -+++ b/nss/lib/ssl/ssl3con.c	2014-01-17 17:59:45.862816905 -0800 | 
| -@@ -12383,6 +12383,68 @@ ssl3_InitSocketPolicy(sslSocket *ss) | 
| +diff --git a/ssl/ssl.h b/ssl/ssl.h | 
| +index 716537d..80717db 100644 | 
| +--- a/ssl/ssl.h | 
| ++++ b/ssl/ssl.h | 
| +@@ -292,6 +292,27 @@ SSL_IMPORT SECStatus SSL_CipherPrefGetDefault(PRInt32 cipher, PRBool *enabled); | 
| + SSL_IMPORT SECStatus SSL_CipherPolicySet(PRInt32 cipher, PRInt32 policy); | 
| + SSL_IMPORT SECStatus SSL_CipherPolicyGet(PRInt32 cipher, PRInt32 *policy); | 
| + | 
| ++/* SSLChannelBindingType enumerates the types of supported channel binding | 
| ++ * values. See RFC 5929. */ | 
| ++typedef enum SSLChannelBindingType { | 
| ++    SSL_CHANNEL_BINDING_TLS_UNIQUE = 1, | 
| ++} SSLChannelBindingType; | 
| ++ | 
| ++/* SSL_GetChannelBinding copies the requested channel binding value, as defined | 
| ++ * in RFC 5929, into |out|. The full length of the binding value is written | 
| ++ * into |*outLen|. | 
| ++ * | 
| ++ * At most |outLenMax| bytes of data are copied. If |outLenMax| is | 
| ++ * insufficient then the function returns SECFailure and sets the error to | 
| ++ * SEC_ERROR_OUTPUT_LEN, but |*outLen| is still set. | 
| ++ * | 
| ++ * This call will fail if made during a renegotiation. */ | 
| ++SSL_IMPORT SECStatus SSL_GetChannelBinding(PRFileDesc *fd, | 
| ++					   SSLChannelBindingType binding_type, | 
| ++					   unsigned char *out, | 
| ++					   unsigned int *outLen, | 
| ++					   unsigned int outLenMax); | 
| ++ | 
| + /* SSL Version Range API | 
| + ** | 
| + ** This API should be used to control SSL 3.0 & TLS support instead of the | 
| +diff --git a/ssl/ssl3con.c b/ssl/ssl3con.c | 
| +index 45c3454..67c8f6d 100644 | 
| +--- a/ssl/ssl3con.c | 
| ++++ b/ssl/ssl3con.c | 
| +@@ -12471,6 +12471,68 @@ ssl3_InitSocketPolicy(sslSocket *ss) | 
| PORT_Memcpy(ss->cipherSuites, cipherSuites, sizeof cipherSuites); | 
| } | 
|  | 
| @@ -70,41 +103,11 @@ diff -pu a/nss/lib/ssl/ssl3con.c b/nss/lib/ssl/ssl3con.c | 
| /* ssl3_config_match_init must have already been called by | 
| * the caller of this function. | 
| */ | 
| -diff -pu a/nss/lib/ssl/ssl.h b/nss/lib/ssl/ssl.h | 
| ---- a/nss/lib/ssl/ssl.h	2014-01-17 17:59:03.242109996 -0800 | 
| -+++ b/nss/lib/ssl/ssl.h	2014-01-17 17:59:45.862816905 -0800 | 
| -@@ -282,6 +282,27 @@ SSL_IMPORT SECStatus SSL_CipherPrefGetDe | 
| - SSL_IMPORT SECStatus SSL_CipherPolicySet(PRInt32 cipher, PRInt32 policy); | 
| - SSL_IMPORT SECStatus SSL_CipherPolicyGet(PRInt32 cipher, PRInt32 *policy); | 
| - | 
| -+/* SSLChannelBindingType enumerates the types of supported channel binding | 
| -+ * values. See RFC 5929. */ | 
| -+typedef enum SSLChannelBindingType { | 
| -+    SSL_CHANNEL_BINDING_TLS_UNIQUE = 1, | 
| -+} SSLChannelBindingType; | 
| -+ | 
| -+/* SSL_GetChannelBinding copies the requested channel binding value, as defined | 
| -+ * in RFC 5929, into |out|. The full length of the binding value is written | 
| -+ * into |*outLen|. | 
| -+ * | 
| -+ * At most |outLenMax| bytes of data are copied. If |outLenMax| is | 
| -+ * insufficient then the function returns SECFailure and sets the error to | 
| -+ * SEC_ERROR_OUTPUT_LEN, but |*outLen| is still set. | 
| -+ * | 
| -+ * This call will fail if made during a renegotiation. */ | 
| -+SSL_IMPORT SECStatus SSL_GetChannelBinding(PRFileDesc *fd, | 
| -+					   SSLChannelBindingType binding_type, | 
| -+					   unsigned char *out, | 
| -+					   unsigned int *outLen, | 
| -+					   unsigned int outLenMax); | 
| -+ | 
| - /* SSL Version Range API | 
| - ** | 
| - ** This API should be used to control SSL 3.0 & TLS support instead of the | 
| -diff -pu a/nss/lib/ssl/sslimpl.h b/nss/lib/ssl/sslimpl.h | 
| ---- a/nss/lib/ssl/sslimpl.h	2014-01-17 17:59:03.242109996 -0800 | 
| -+++ b/nss/lib/ssl/sslimpl.h	2014-01-17 17:59:45.862816905 -0800 | 
| -@@ -1853,6 +1853,11 @@ extern PRBool ssl_GetSessionTicketKeysPK | 
| +diff --git a/ssl/sslimpl.h b/ssl/sslimpl.h | 
| +index 57346cb..2d21e90 100644 | 
| +--- a/ssl/sslimpl.h | 
| ++++ b/ssl/sslimpl.h | 
| +@@ -1857,6 +1857,11 @@ extern PRBool ssl_GetSessionTicketKeysPKCS11(SECKEYPrivateKey *svrPrivKey, | 
| extern SECStatus ssl3_ValidateNextProtoNego(const unsigned char* data, | 
| unsigned int length); | 
|  | 
| @@ -116,10 +119,11 @@ diff -pu a/nss/lib/ssl/sslimpl.h b/nss/lib/ssl/sslimpl.h | 
| /* Construct a new NSPR socket for the app to use */ | 
| extern PRFileDesc *ssl_NewPRSocket(sslSocket *ss, PRFileDesc *fd); | 
| extern void ssl_FreePRSocket(PRFileDesc *fd); | 
| -diff -pu a/nss/lib/ssl/sslsock.c b/nss/lib/ssl/sslsock.c | 
| ---- a/nss/lib/ssl/sslsock.c	2014-01-17 17:59:03.252110162 -0800 | 
| -+++ b/nss/lib/ssl/sslsock.c	2014-01-17 17:59:45.872817074 -0800 | 
| -@@ -1308,6 +1308,27 @@ NSS_SetFrancePolicy(void) | 
| +diff --git a/ssl/sslsock.c b/ssl/sslsock.c | 
| +index d3f3bf4..47906e0 100644 | 
| +--- a/ssl/sslsock.c | 
| ++++ b/ssl/sslsock.c | 
| +@@ -1345,6 +1345,27 @@ NSS_SetFrancePolicy(void) | 
| return NSS_SetDomesticPolicy(); | 
| } | 
|  | 
|  |