Index: net/socket/ssl_client_socket_nss.cc |
diff --git a/net/socket/ssl_client_socket_nss.cc b/net/socket/ssl_client_socket_nss.cc |
index 9d0eea2a070398024e9dd5e34283ce1e2971e930..9b2aed145667c9585bdea1eb0343076e661b56af 100644 |
--- a/net/socket/ssl_client_socket_nss.cc |
+++ b/net/socket/ssl_client_socket_nss.cc |
@@ -2824,6 +2824,21 @@ int SSLClientSocketNSS::ExportKeyingMaterial(const base::StringPiece& label, |
return OK; |
} |
+int SSLClientSocketNSS::GetTlsUniqueChannelBinding(unsigned char* out, |
+ unsigned int *outlen, |
+ unsigned int outlen_max) { |
+ if (!IsConnected()) |
+ return ERR_SOCKET_NOT_CONNECTED; |
+ SECStatus result = SSL_GetChannelBinding(nss_fd_, |
+ SSL_CHANNEL_BINDING_TLS_UNIQUE, |
+ out, outlen, outlen_max); |
+ if (result != SECSuccess) { |
+ LogFailedNSSFunction(net_log_, "SSL_GetChannelBinding", ""); |
+ return MapNSSError(PORT_GetError()); |
+ } |
+ return OK; |
+} |
+ |
SSLClientSocket::NextProtoStatus |
SSLClientSocketNSS::GetNextProto(std::string* proto, |
std::string* server_protos) { |