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 1159 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1170 CompletionCallback c = user_connect_callback_; | 1170 CompletionCallback c = user_connect_callback_; |
1171 user_connect_callback_.Reset(); | 1171 user_connect_callback_.Reset(); |
1172 c.Run(rv > OK ? OK : rv); | 1172 c.Run(rv > OK ? OK : rv); |
1173 } | 1173 } |
1174 } | 1174 } |
1175 | 1175 |
1176 void SSLClientSocketOpenSSL::UpdateServerCert() { | 1176 void SSLClientSocketOpenSSL::UpdateServerCert() { |
1177 server_cert_chain_->Reset(SSL_get_peer_cert_chain(ssl_)); | 1177 server_cert_chain_->Reset(SSL_get_peer_cert_chain(ssl_)); |
1178 server_cert_ = server_cert_chain_->AsOSChain(); | 1178 server_cert_ = server_cert_chain_->AsOSChain(); |
1179 if (server_cert_.get()) { | 1179 if (server_cert_.get()) { |
1180 net_log_.AddEvent( | 1180 net_log_.AddEvent(NetLog::TYPE_SSL_CERTIFICATES_RECEIVED, |
1181 NetLog::TYPE_SSL_CERTIFICATES_RECEIVED, | 1181 base::Bind(NetLogX509CertificateCallback, |
1182 base::Bind(&NetLogX509CertificateCallback, | 1182 base::Unretained(server_cert_.get()))); |
1183 base::Unretained(server_cert_.get()))); | |
1184 } | 1183 } |
1185 } | 1184 } |
1186 | 1185 |
1187 void SSLClientSocketOpenSSL::VerifyCT() { | 1186 void SSLClientSocketOpenSSL::VerifyCT() { |
1188 if (!cert_transparency_verifier_) | 1187 if (!cert_transparency_verifier_) |
1189 return; | 1188 return; |
1190 | 1189 |
1191 const uint8_t* ocsp_response_raw; | 1190 const uint8_t* ocsp_response_raw; |
1192 size_t ocsp_response_len; | 1191 size_t ocsp_response_len; |
1193 SSL_get0_ocsp_response(ssl_, &ocsp_response_raw, &ocsp_response_len); | 1192 SSL_get0_ocsp_response(ssl_, &ocsp_response_raw, &ocsp_response_len); |
(...skipping 720 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1914 } | 1913 } |
1915 return false; | 1914 return false; |
1916 } | 1915 } |
1917 | 1916 |
1918 scoped_refptr<X509Certificate> | 1917 scoped_refptr<X509Certificate> |
1919 SSLClientSocketOpenSSL::GetUnverifiedServerCertificateChain() const { | 1918 SSLClientSocketOpenSSL::GetUnverifiedServerCertificateChain() const { |
1920 return server_cert_; | 1919 return server_cert_; |
1921 } | 1920 } |
1922 | 1921 |
1923 } // namespace net | 1922 } // namespace net |
OLD | NEW |