Index: net/socket/ssl_server_socket_nss.cc |
diff --git a/net/socket/ssl_server_socket_nss.cc b/net/socket/ssl_server_socket_nss.cc |
index a43dbfe6b6f1d0f445773a6aac3ea062f8c70f8f..a1f29cc9e4b62ab9fc9e2e7d07defea7ce4a8323 100644 |
--- a/net/socket/ssl_server_socket_nss.cc |
+++ b/net/socket/ssl_server_socket_nss.cc |
@@ -169,6 +169,21 @@ int SSLServerSocketNSS::ExportKeyingMaterial(const base::StringPiece& label, |
return OK; |
} |
+int SSLServerSocketNSS::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; |
+} |
+ |
int SSLServerSocketNSS::Connect(const CompletionCallback& callback) { |
NOTIMPLEMENTED(); |
return ERR_NOT_IMPLEMENTED; |