| 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 <openssl/ssl.h> | 10 #include <openssl/ssl.h> |
| (...skipping 569 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 580 ssl_info->Reset(); | 580 ssl_info->Reset(); |
| 581 if (!server_cert_) | 581 if (!server_cert_) |
| 582 return; | 582 return; |
| 583 | 583 |
| 584 ssl_info->cert = server_cert_verify_result_.verified_cert; | 584 ssl_info->cert = server_cert_verify_result_.verified_cert; |
| 585 ssl_info->cert_status = server_cert_verify_result_.cert_status; | 585 ssl_info->cert_status = server_cert_verify_result_.cert_status; |
| 586 ssl_info->is_issued_by_known_root = | 586 ssl_info->is_issued_by_known_root = |
| 587 server_cert_verify_result_.is_issued_by_known_root; | 587 server_cert_verify_result_.is_issued_by_known_root; |
| 588 ssl_info->public_key_hashes = | 588 ssl_info->public_key_hashes = |
| 589 server_cert_verify_result_.public_key_hashes; | 589 server_cert_verify_result_.public_key_hashes; |
| 590 ssl_info->client_cert_sent = WasOriginBoundCertSent() || | 590 ssl_info->client_cert_sent = WasDomainBoundCertSent() || |
| 591 (ssl_config_.send_client_cert && ssl_config_.client_cert); | 591 (ssl_config_.send_client_cert && ssl_config_.client_cert); |
| 592 | 592 |
| 593 const SSL_CIPHER* cipher = SSL_get_current_cipher(ssl_); | 593 const SSL_CIPHER* cipher = SSL_get_current_cipher(ssl_); |
| 594 CHECK(cipher); | 594 CHECK(cipher); |
| 595 ssl_info->security_bits = SSL_CIPHER_get_bits(cipher, NULL); | 595 ssl_info->security_bits = SSL_CIPHER_get_bits(cipher, NULL); |
| 596 const COMP_METHOD* compression = SSL_get_current_compression(ssl_); | 596 const COMP_METHOD* compression = SSL_get_current_compression(ssl_); |
| 597 | 597 |
| 598 ssl_info->connection_status = EncodeSSLConnectionStatus( | 598 ssl_info->connection_status = EncodeSSLConnectionStatus( |
| 599 SSL_CIPHER_get_id(cipher), | 599 SSL_CIPHER_get_id(cipher), |
| 600 compression ? compression->type : 0, | 600 compression ? compression->type : 0, |
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 645 return OK; | 645 return OK; |
| 646 } | 646 } |
| 647 | 647 |
| 648 SSLClientSocket::NextProtoStatus SSLClientSocketOpenSSL::GetNextProto( | 648 SSLClientSocket::NextProtoStatus SSLClientSocketOpenSSL::GetNextProto( |
| 649 std::string* proto, std::string* server_protos) { | 649 std::string* proto, std::string* server_protos) { |
| 650 *proto = npn_proto_; | 650 *proto = npn_proto_; |
| 651 *server_protos = server_protos_; | 651 *server_protos = server_protos_; |
| 652 return npn_status_; | 652 return npn_status_; |
| 653 } | 653 } |
| 654 | 654 |
| 655 OriginBoundCertService* | 655 ServerBoundCertService* |
| 656 SSLClientSocketOpenSSL::GetOriginBoundCertService() const { | 656 SSLClientSocketOpenSSL::GetServerBoundCertService() const { |
| 657 return NULL; | 657 return NULL; |
| 658 } | 658 } |
| 659 | 659 |
| 660 void SSLClientSocketOpenSSL::DoReadCallback(int rv) { | 660 void SSLClientSocketOpenSSL::DoReadCallback(int rv) { |
| 661 // Since Run may result in Read being called, clear |user_read_callback_| | 661 // Since Run may result in Read being called, clear |user_read_callback_| |
| 662 // up front. | 662 // up front. |
| 663 CompletionCallback c = user_read_callback_; | 663 CompletionCallback c = user_read_callback_; |
| 664 user_read_callback_.Reset(); | 664 user_read_callback_.Reset(); |
| 665 user_read_buf_ = NULL; | 665 user_read_buf_ = NULL; |
| 666 user_read_buf_len_ = 0; | 666 user_read_buf_len_ = 0; |
| (...skipping 629 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1296 net_log_.AddByteTransferEvent(NetLog::TYPE_SSL_SOCKET_BYTES_SENT, rv, | 1296 net_log_.AddByteTransferEvent(NetLog::TYPE_SSL_SOCKET_BYTES_SENT, rv, |
| 1297 user_write_buf_->data()); | 1297 user_write_buf_->data()); |
| 1298 return rv; | 1298 return rv; |
| 1299 } | 1299 } |
| 1300 | 1300 |
| 1301 int err = SSL_get_error(ssl_, rv); | 1301 int err = SSL_get_error(ssl_, rv); |
| 1302 return MapOpenSSLError(err, err_tracer); | 1302 return MapOpenSSLError(err, err_tracer); |
| 1303 } | 1303 } |
| 1304 | 1304 |
| 1305 } // namespace net | 1305 } // namespace net |
| OLD | NEW |