| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 // OpenSSL binding for SSLClientSocket. The class layout and general principle | 5 // OpenSSL binding for SSLClientSocket. The class layout and general principle |
| 6 // of operation is derived from SSLClientSocketNSS. | 6 // of operation is derived from SSLClientSocketNSS. |
| 7 | 7 |
| 8 #include "net/socket/ssl_client_socket_openssl.h" | 8 #include "net/socket/ssl_client_socket_openssl.h" |
| 9 | 9 |
| 10 #include <errno.h> | 10 #include <errno.h> |
| (...skipping 1000 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1011 flags |= CertVerifier::VERIFY_EV_CERT; | 1011 flags |= CertVerifier::VERIFY_EV_CERT; |
| 1012 if (ssl_config_.cert_io_enabled) | 1012 if (ssl_config_.cert_io_enabled) |
| 1013 flags |= CertVerifier::VERIFY_CERT_IO_ENABLED; | 1013 flags |= CertVerifier::VERIFY_CERT_IO_ENABLED; |
| 1014 if (ssl_config_.rev_checking_required_local_anchors) | 1014 if (ssl_config_.rev_checking_required_local_anchors) |
| 1015 flags |= CertVerifier::VERIFY_REV_CHECKING_REQUIRED_LOCAL_ANCHORS; | 1015 flags |= CertVerifier::VERIFY_REV_CHECKING_REQUIRED_LOCAL_ANCHORS; |
| 1016 verifier_.reset(new SingleRequestCertVerifier(cert_verifier_)); | 1016 verifier_.reset(new SingleRequestCertVerifier(cert_verifier_)); |
| 1017 return verifier_->Verify( | 1017 return verifier_->Verify( |
| 1018 server_cert_.get(), | 1018 server_cert_.get(), |
| 1019 host_and_port_.host(), | 1019 host_and_port_.host(), |
| 1020 flags, | 1020 flags, |
| 1021 NULL /* no CRL set */, | 1021 // TODO(davidben): Route the CRLSet through SSLConfig so |
| 1022 // SSLClientSocket doesn't depend on SSLConfigService. |
| 1023 SSLConfigService::GetCRLSet().get(), |
| 1022 &server_cert_verify_result_, | 1024 &server_cert_verify_result_, |
| 1023 base::Bind(&SSLClientSocketOpenSSL::OnHandshakeIOComplete, | 1025 base::Bind(&SSLClientSocketOpenSSL::OnHandshakeIOComplete, |
| 1024 base::Unretained(this)), | 1026 base::Unretained(this)), |
| 1025 net_log_); | 1027 net_log_); |
| 1026 } | 1028 } |
| 1027 | 1029 |
| 1028 int SSLClientSocketOpenSSL::DoVerifyCertComplete(int result) { | 1030 int SSLClientSocketOpenSSL::DoVerifyCertComplete(int result) { |
| 1029 verifier_.reset(); | 1031 verifier_.reset(); |
| 1030 | 1032 |
| 1031 if (result == OK) { | 1033 if (result == OK) { |
| (...skipping 557 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1589 return socket->MaybeReplayTransportError( | 1591 return socket->MaybeReplayTransportError( |
| 1590 bio, cmd, argp, argi, argl, retvalue); | 1592 bio, cmd, argp, argi, argl, retvalue); |
| 1591 } | 1593 } |
| 1592 | 1594 |
| 1593 scoped_refptr<X509Certificate> | 1595 scoped_refptr<X509Certificate> |
| 1594 SSLClientSocketOpenSSL::GetUnverifiedServerCertificateChain() const { | 1596 SSLClientSocketOpenSSL::GetUnverifiedServerCertificateChain() const { |
| 1595 return server_cert_; | 1597 return server_cert_; |
| 1596 } | 1598 } |
| 1597 | 1599 |
| 1598 } // namespace net | 1600 } // namespace net |
| OLD | NEW |