summaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorjoth@chromium.org <joth@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-12-06 17:56:27 +0000
committerjoth@chromium.org <joth@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-12-06 17:56:27 +0000
commit5ac981e18bcad738dbe3e34a59c5814a9f00ea08 (patch)
tree18a084c3637a7b917c9b25cb4a84e71c048290d3 /net
parentf34ce0c1ebd93023b1a227b4ce1aef34b84c5257 (diff)
downloadchromium_src-5ac981e18bcad738dbe3e34a59c5814a9f00ea08.zip
chromium_src-5ac981e18bcad738dbe3e34a59c5814a9f00ea08.tar.gz
chromium_src-5ac981e18bcad738dbe3e34a59c5814a9f00ea08.tar.bz2
I missed some comments from wtc on patch http://codereview.chromium.org/5195001 before landing, so following up here.
BUG=None TEST=None Review URL: http://codereview.chromium.org/5587001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68351 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net')
-rw-r--r--net/base/x509_certificate_openssl.cc1
-rw-r--r--net/base/x509_openssl_util.cc4
-rw-r--r--net/socket/ssl_client_socket_openssl.cc50
3 files changed, 27 insertions, 28 deletions
diff --git a/net/base/x509_certificate_openssl.cc b/net/base/x509_certificate_openssl.cc
index abddd97..0d55c35 100644
--- a/net/base/x509_certificate_openssl.cc
+++ b/net/base/x509_certificate_openssl.cc
@@ -434,7 +434,6 @@ int X509Certificate::Verify(const std::string& hostname,
<< " : " << X509_STORE_CTX_get_error_depth(ctx.get())
<< " : " << cert_status;
verify_result->cert_status |= cert_status;
- return MapCertStatusToNetError(verify_result->cert_status);
}
if (IsCertStatusError(verify_result->cert_status))
diff --git a/net/base/x509_openssl_util.cc b/net/base/x509_openssl_util.cc
index 81424cc..35871ad 100644
--- a/net/base/x509_openssl_util.cc
+++ b/net/base/x509_openssl_util.cc
@@ -113,8 +113,8 @@ bool VerifyHostname(const std::string& hostname,
// it's needed by the test server. TODO(joth): Replace this with full IP
// address support. See http://crbug.com/62973
if (hostname == "127.0.0.1" &&
- std::find(cert_names.begin(), cert_names.end(), hostname)
- != cert_names.end()) {
+ std::find(cert_names.begin(), cert_names.end(), hostname) !=
+ cert_names.end()) {
DVLOG(1) << "Allowing localhost IP certificate: " << hostname;
return true;
}
diff --git a/net/socket/ssl_client_socket_openssl.cc b/net/socket/ssl_client_socket_openssl.cc
index 7fe7712..0c02507 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);