| 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 #include "net/socket/ssl_client_socket_win.h" | 5 #include "net/socket/ssl_client_socket_win.h" |
| 6 | 6 |
| 7 #include <schnlsp.h> | 7 #include <schnlsp.h> |
| 8 | 8 |
| 9 #include <algorithm> | 9 #include <algorithm> |
| 10 #include <map> | 10 #include <map> |
| (...skipping 394 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 405 void SSLClientSocketWin::GetSSLInfo(SSLInfo* ssl_info) { | 405 void SSLClientSocketWin::GetSSLInfo(SSLInfo* ssl_info) { |
| 406 ssl_info->Reset(); | 406 ssl_info->Reset(); |
| 407 if (!server_cert_) | 407 if (!server_cert_) |
| 408 return; | 408 return; |
| 409 | 409 |
| 410 ssl_info->cert = server_cert_verify_result_.verified_cert; | 410 ssl_info->cert = server_cert_verify_result_.verified_cert; |
| 411 ssl_info->cert_status = server_cert_verify_result_.cert_status; | 411 ssl_info->cert_status = server_cert_verify_result_.cert_status; |
| 412 ssl_info->public_key_hashes = server_cert_verify_result_.public_key_hashes; | 412 ssl_info->public_key_hashes = server_cert_verify_result_.public_key_hashes; |
| 413 ssl_info->is_issued_by_known_root = | 413 ssl_info->is_issued_by_known_root = |
| 414 server_cert_verify_result_.is_issued_by_known_root; | 414 server_cert_verify_result_.is_issued_by_known_root; |
| 415 ssl_info->client_cert_sent = WasOriginBoundCertSent() || | 415 ssl_info->client_cert_sent = WasDomainBoundCertSent() || |
| 416 (ssl_config_.send_client_cert && ssl_config_.client_cert); | 416 (ssl_config_.send_client_cert && ssl_config_.client_cert); |
| 417 SecPkgContext_ConnectionInfo connection_info; | 417 SecPkgContext_ConnectionInfo connection_info; |
| 418 SECURITY_STATUS status = QueryContextAttributes( | 418 SECURITY_STATUS status = QueryContextAttributes( |
| 419 &ctxt_, SECPKG_ATTR_CONNECTION_INFO, &connection_info); | 419 &ctxt_, SECPKG_ATTR_CONNECTION_INFO, &connection_info); |
| 420 if (status == SEC_E_OK) { | 420 if (status == SEC_E_OK) { |
| 421 // TODO(wtc): compute the overall security strength, taking into account | 421 // TODO(wtc): compute the overall security strength, taking into account |
| 422 // dwExchStrength and dwHashStrength. dwExchStrength needs to be | 422 // dwExchStrength and dwHashStrength. dwExchStrength needs to be |
| 423 // normalized. | 423 // normalized. |
| 424 ssl_info->security_bits = connection_info.dwCipherStrength; | 424 ssl_info->security_bits = connection_info.dwCipherStrength; |
| 425 } | 425 } |
| (...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 548 } | 548 } |
| 549 | 549 |
| 550 SSLClientSocket::NextProtoStatus | 550 SSLClientSocket::NextProtoStatus |
| 551 SSLClientSocketWin::GetNextProto(std::string* proto, | 551 SSLClientSocketWin::GetNextProto(std::string* proto, |
| 552 std::string* server_protos) { | 552 std::string* server_protos) { |
| 553 proto->clear(); | 553 proto->clear(); |
| 554 server_protos->clear(); | 554 server_protos->clear(); |
| 555 return kNextProtoUnsupported; | 555 return kNextProtoUnsupported; |
| 556 } | 556 } |
| 557 | 557 |
| 558 OriginBoundCertService* SSLClientSocketWin::GetOriginBoundCertService() const { | 558 ServerBoundCertService* SSLClientSocketWin::GetServerBoundCertService() const { |
| 559 return NULL; | 559 return NULL; |
| 560 } | 560 } |
| 561 | 561 |
| 562 int SSLClientSocketWin::Connect(const CompletionCallback& callback) { | 562 int SSLClientSocketWin::Connect(const CompletionCallback& callback) { |
| 563 DCHECK(transport_.get()); | 563 DCHECK(transport_.get()); |
| 564 DCHECK(next_state_ == STATE_NONE); | 564 DCHECK(next_state_ == STATE_NONE); |
| 565 DCHECK(user_connect_callback_.is_null()); | 565 DCHECK(user_connect_callback_.is_null()); |
| 566 | 566 |
| 567 net_log_.BeginEvent(NetLog::TYPE_SSL_CONNECT, NULL); | 567 net_log_.BeginEvent(NetLog::TYPE_SSL_CONNECT, NULL); |
| 568 | 568 |
| (...skipping 1023 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1592 UpdateConnectionTypeHistograms(CONNECTION_SSL_MD2_CA); | 1592 UpdateConnectionTypeHistograms(CONNECTION_SSL_MD2_CA); |
| 1593 } | 1593 } |
| 1594 | 1594 |
| 1595 void SSLClientSocketWin::FreeSendBuffer() { | 1595 void SSLClientSocketWin::FreeSendBuffer() { |
| 1596 SECURITY_STATUS status = FreeContextBuffer(send_buffer_.pvBuffer); | 1596 SECURITY_STATUS status = FreeContextBuffer(send_buffer_.pvBuffer); |
| 1597 DCHECK(status == SEC_E_OK); | 1597 DCHECK(status == SEC_E_OK); |
| 1598 memset(&send_buffer_, 0, sizeof(send_buffer_)); | 1598 memset(&send_buffer_, 0, sizeof(send_buffer_)); |
| 1599 } | 1599 } |
| 1600 | 1600 |
| 1601 } // namespace net | 1601 } // namespace net |
| OLD | NEW |