| 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.h" | 5 #include "net/socket/ssl_client_socket.h" |
| 6 | 6 |
| 7 #include <errno.h> | 7 #include <errno.h> |
| 8 #include <string.h> | 8 #include <string.h> |
| 9 | 9 |
| 10 #include <utility> | 10 #include <utility> |
| (...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 93 bool IsConnected() const override { return transport_->IsConnected(); } | 93 bool IsConnected() const override { return transport_->IsConnected(); } |
| 94 bool IsConnectedAndIdle() const override { | 94 bool IsConnectedAndIdle() const override { |
| 95 return transport_->IsConnectedAndIdle(); | 95 return transport_->IsConnectedAndIdle(); |
| 96 } | 96 } |
| 97 int GetPeerAddress(IPEndPoint* address) const override { | 97 int GetPeerAddress(IPEndPoint* address) const override { |
| 98 return transport_->GetPeerAddress(address); | 98 return transport_->GetPeerAddress(address); |
| 99 } | 99 } |
| 100 int GetLocalAddress(IPEndPoint* address) const override { | 100 int GetLocalAddress(IPEndPoint* address) const override { |
| 101 return transport_->GetLocalAddress(address); | 101 return transport_->GetLocalAddress(address); |
| 102 } | 102 } |
| 103 const BoundNetLog& NetLog() const override { return transport_->NetLog(); } | 103 const NetLogWithSource& NetLog() const override { |
| 104 return transport_->NetLog(); |
| 105 } |
| 104 void SetSubresourceSpeculation() override { | 106 void SetSubresourceSpeculation() override { |
| 105 transport_->SetSubresourceSpeculation(); | 107 transport_->SetSubresourceSpeculation(); |
| 106 } | 108 } |
| 107 void SetOmniboxSpeculation() override { transport_->SetOmniboxSpeculation(); } | 109 void SetOmniboxSpeculation() override { transport_->SetOmniboxSpeculation(); } |
| 108 bool WasEverUsed() const override { return transport_->WasEverUsed(); } | 110 bool WasEverUsed() const override { return transport_->WasEverUsed(); } |
| 109 bool WasNpnNegotiated() const override { | 111 bool WasNpnNegotiated() const override { |
| 110 return transport_->WasNpnNegotiated(); | 112 return transport_->WasNpnNegotiated(); |
| 111 } | 113 } |
| 112 NextProto GetNegotiatedProtocol() const override { | 114 NextProto GetNegotiatedProtocol() const override { |
| 113 return transport_->GetNegotiatedProtocol(); | 115 return transport_->GetNegotiatedProtocol(); |
| (...skipping 570 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 684 void GetAllChannelIDs(const GetChannelIDListCallback& callback) override {} | 686 void GetAllChannelIDs(const GetChannelIDListCallback& callback) override {} |
| 685 int GetChannelIDCount() override { return 0; } | 687 int GetChannelIDCount() override { return 0; } |
| 686 void SetForceKeepSessionState() override {} | 688 void SetForceKeepSessionState() override {} |
| 687 bool IsEphemeral() override { return true; } | 689 bool IsEphemeral() override { return true; } |
| 688 }; | 690 }; |
| 689 | 691 |
| 690 // A mock CTVerifier that records every call to Verify but doesn't verify | 692 // A mock CTVerifier that records every call to Verify but doesn't verify |
| 691 // anything. | 693 // anything. |
| 692 class MockCTVerifier : public CTVerifier { | 694 class MockCTVerifier : public CTVerifier { |
| 693 public: | 695 public: |
| 694 MOCK_METHOD5(Verify, int(X509Certificate*, | 696 MOCK_METHOD5(Verify, |
| 695 const std::string&, | 697 int(X509Certificate*, |
| 696 const std::string&, | 698 const std::string&, |
| 697 ct::CTVerifyResult*, | 699 const std::string&, |
| 698 const BoundNetLog&)); | 700 ct::CTVerifyResult*, |
| 701 const NetLogWithSource&)); |
| 699 MOCK_METHOD1(SetObserver, void(CTVerifier::Observer*)); | 702 MOCK_METHOD1(SetObserver, void(CTVerifier::Observer*)); |
| 700 }; | 703 }; |
| 701 | 704 |
| 702 // A mock CTPolicyEnforcer that returns a custom verification result. | 705 // A mock CTPolicyEnforcer that returns a custom verification result. |
| 703 class MockCTPolicyEnforcer : public CTPolicyEnforcer { | 706 class MockCTPolicyEnforcer : public CTPolicyEnforcer { |
| 704 public: | 707 public: |
| 705 MOCK_METHOD3(DoesConformToCertPolicy, | 708 MOCK_METHOD3(DoesConformToCertPolicy, |
| 706 ct::CertPolicyCompliance(X509Certificate* cert, | 709 ct::CertPolicyCompliance(X509Certificate* cert, |
| 707 const ct::SCTList&, | 710 const ct::SCTList&, |
| 708 const BoundNetLog&)); | 711 const NetLogWithSource&)); |
| 709 MOCK_METHOD4(DoesConformToCTEVPolicy, | 712 MOCK_METHOD4(DoesConformToCTEVPolicy, |
| 710 ct::EVPolicyCompliance(X509Certificate* cert, | 713 ct::EVPolicyCompliance(X509Certificate* cert, |
| 711 const ct::EVCertsWhitelist*, | 714 const ct::EVCertsWhitelist*, |
| 712 const ct::SCTList&, | 715 const ct::SCTList&, |
| 713 const BoundNetLog&)); | 716 const NetLogWithSource&)); |
| 714 }; | 717 }; |
| 715 | 718 |
| 716 class MockRequireCTDelegate : public TransportSecurityState::RequireCTDelegate { | 719 class MockRequireCTDelegate : public TransportSecurityState::RequireCTDelegate { |
| 717 public: | 720 public: |
| 718 MOCK_METHOD1(IsCTRequiredForHost, | 721 MOCK_METHOD1(IsCTRequiredForHost, |
| 719 CTRequirementLevel(const std::string& host)); | 722 CTRequirementLevel(const std::string& host)); |
| 720 }; | 723 }; |
| 721 | 724 |
| 722 class SSLClientSocketTest : public PlatformTest { | 725 class SSLClientSocketTest : public PlatformTest { |
| 723 public: | 726 public: |
| (...skipping 2700 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3424 ASSERT_TRUE(sock_->GetSSLInfo(&ssl_info)); | 3427 ASSERT_TRUE(sock_->GetSSLInfo(&ssl_info)); |
| 3425 | 3428 |
| 3426 EXPECT_THAT(rv, IsError(ERR_SSL_PINNED_KEY_NOT_IN_CERT_CHAIN)); | 3429 EXPECT_THAT(rv, IsError(ERR_SSL_PINNED_KEY_NOT_IN_CERT_CHAIN)); |
| 3427 EXPECT_TRUE(ssl_info.cert_status & CERT_STATUS_PINNED_KEY_MISSING); | 3430 EXPECT_TRUE(ssl_info.cert_status & CERT_STATUS_PINNED_KEY_MISSING); |
| 3428 EXPECT_TRUE(ssl_info.cert_status & | 3431 EXPECT_TRUE(ssl_info.cert_status & |
| 3429 CERT_STATUS_CERTIFICATE_TRANSPARENCY_REQUIRED); | 3432 CERT_STATUS_CERTIFICATE_TRANSPARENCY_REQUIRED); |
| 3430 EXPECT_TRUE(sock_->IsConnected()); | 3433 EXPECT_TRUE(sock_->IsConnected()); |
| 3431 } | 3434 } |
| 3432 | 3435 |
| 3433 } // namespace net | 3436 } // namespace net |
| OLD | NEW |