Index: net/socket/ssl_client_socket_openssl.cc |
diff --git a/net/socket/ssl_client_socket_openssl.cc b/net/socket/ssl_client_socket_openssl.cc |
index 7fe771235dd7a7e3cd2a270fab7c639462ef5df0..0c025078631fc0cd7c1dac3886fba4aa28beb09b 100644 |
--- a/net/socket/ssl_client_socket_openssl.cc |
+++ b/net/socket/ssl_client_socket_openssl.cc |
@@ -323,6 +323,31 @@ bool SSLClientSocketOpenSSL::Init() { |
return true; |
} |
+int SSLClientSocketOpenSSL::ClientCertRequestCallback(SSL* ssl, |
+ X509** x509, |
+ EVP_PKEY** pkey) { |
+ DVLOG(3) << "OpenSSL ClientCertRequestCallback called"; |
+ DCHECK(ssl == ssl_); |
+ DCHECK(*x509 == NULL); |
+ DCHECK(*pkey == NULL); |
+ |
+ if (!ssl_config_.send_client_cert) { |
+ client_auth_cert_needed_ = true; |
+ return -1; // Suspends handshake. |
+ } |
+ |
+ // Second pass: a client certificate should have been selected. |
+ if (ssl_config_.client_cert) { |
+ // TODO(joth): We need a way to lookup the private key this |
+ // certificate. See http://crbug.com/64951 and example code in |
+ // http://codereview.chromium.org/5195001/diff/6001/net/socket/ssl_client_socket_openssl.cc |
+ NOTIMPLEMENTED(); |
+ } |
+ |
+ // Send no client certificate. |
+ return 0; |
+} |
+ |
// SSLClientSocket methods |
void SSLClientSocketOpenSSL::GetSSLInfo(SSLInfo* ssl_info) { |
@@ -542,31 +567,6 @@ int SSLClientSocketOpenSSL::DoHandshake() { |
return net_error; |
} |
-int SSLClientSocketOpenSSL::ClientCertRequestCallback(SSL* ssl, |
- X509** x509, |
- EVP_PKEY** pkey) { |
- DVLOG(3) << "OpenSSL ClientCertRequestCallback called"; |
- DCHECK(ssl == ssl_); |
- DCHECK(*x509 == NULL); |
- DCHECK(*pkey == NULL); |
- |
- if (!ssl_config_.send_client_cert) { |
- client_auth_cert_needed_ = true; |
- return -1; // Suspends handshake. |
- } |
- |
- // Second pass: a client certificate should have been selected. |
- if (ssl_config_.client_cert) { |
- // TODO(joth): We need a way to lookup the private key this |
- // certificate. See http://crbug.com/64951 and example code in |
- // http://codereview.chromium.org/5195001/diff/6001/net/socket/ssl_client_socket_openssl.cc |
- NOTIMPLEMENTED(); |
- } |
- |
- // Send no client certificate. |
- return 0; |
-} |
- |
int SSLClientSocketOpenSSL::DoVerifyCert(int result) { |
DCHECK(server_cert_); |
GotoState(STATE_VERIFY_CERT_COMPLETE); |