OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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/http/http_network_transaction.h" | 5 #include "net/http/http_network_transaction.h" |
6 | 6 |
7 #include <math.h> // ceil | 7 #include <math.h> // ceil |
8 #include <stdarg.h> | 8 #include <stdarg.h> |
9 #include <stdint.h> | 9 #include <stdint.h> |
10 #include <limits> | 10 #include <limits> |
(...skipping 615 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
626 CaptureGroupNameHttpProxySocketPool; | 626 CaptureGroupNameHttpProxySocketPool; |
627 typedef CaptureGroupNameSocketPool<SOCKSClientSocketPool> | 627 typedef CaptureGroupNameSocketPool<SOCKSClientSocketPool> |
628 CaptureGroupNameSOCKSSocketPool; | 628 CaptureGroupNameSOCKSSocketPool; |
629 typedef CaptureGroupNameSocketPool<SSLClientSocketPool> | 629 typedef CaptureGroupNameSocketPool<SSLClientSocketPool> |
630 CaptureGroupNameSSLSocketPool; | 630 CaptureGroupNameSSLSocketPool; |
631 | 631 |
632 template <typename ParentPool> | 632 template <typename ParentPool> |
633 CaptureGroupNameSocketPool<ParentPool>::CaptureGroupNameSocketPool( | 633 CaptureGroupNameSocketPool<ParentPool>::CaptureGroupNameSocketPool( |
634 HostResolver* host_resolver, | 634 HostResolver* host_resolver, |
635 CertVerifier* /* cert_verifier */) | 635 CertVerifier* /* cert_verifier */) |
636 : ParentPool(0, 0, host_resolver, NULL, NULL) { | 636 : ParentPool(0, 0, host_resolver, NULL, NULL, NULL) {} |
637 } | |
638 | 637 |
639 template <> | 638 template <> |
640 CaptureGroupNameHttpProxySocketPool::CaptureGroupNameSocketPool( | 639 CaptureGroupNameHttpProxySocketPool::CaptureGroupNameSocketPool( |
641 HostResolver* /* host_resolver */, | 640 HostResolver* /* host_resolver */, |
642 CertVerifier* /* cert_verifier */) | 641 CertVerifier* /* cert_verifier */) |
643 : HttpProxyClientSocketPool(0, 0, NULL, NULL, NULL) { | 642 : HttpProxyClientSocketPool(0, 0, NULL, NULL, NULL) { |
644 } | 643 } |
645 | 644 |
646 template <> | 645 template <> |
647 CaptureGroupNameSSLSocketPool::CaptureGroupNameSocketPool( | 646 CaptureGroupNameSSLSocketPool::CaptureGroupNameSocketPool( |
(...skipping 11015 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
11663 | 11662 |
11664 scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); | 11663 scoped_ptr<HttpNetworkSession> session(CreateSession(&session_deps_)); |
11665 | 11664 |
11666 // Use a TCP Socket Pool with only one connection per group. This is used | 11665 // Use a TCP Socket Pool with only one connection per group. This is used |
11667 // to validate that the TCP socket is not released to the pool between | 11666 // to validate that the TCP socket is not released to the pool between |
11668 // each round of multi-round authentication. | 11667 // each round of multi-round authentication. |
11669 HttpNetworkSessionPeer session_peer(session.get()); | 11668 HttpNetworkSessionPeer session_peer(session.get()); |
11670 TransportClientSocketPool* transport_pool = new TransportClientSocketPool( | 11669 TransportClientSocketPool* transport_pool = new TransportClientSocketPool( |
11671 50, // Max sockets for pool | 11670 50, // Max sockets for pool |
11672 1, // Max sockets per group | 11671 1, // Max sockets per group |
11673 session_deps_.host_resolver.get(), | 11672 session_deps_.host_resolver.get(), session_deps_.socket_factory.get(), |
11674 session_deps_.socket_factory.get(), | 11673 NULL, session_deps_.net_log); |
11675 session_deps_.net_log); | |
11676 scoped_ptr<MockClientSocketPoolManager> mock_pool_manager( | 11674 scoped_ptr<MockClientSocketPoolManager> mock_pool_manager( |
11677 new MockClientSocketPoolManager); | 11675 new MockClientSocketPoolManager); |
11678 mock_pool_manager->SetTransportSocketPool(transport_pool); | 11676 mock_pool_manager->SetTransportSocketPool(transport_pool); |
11679 session_peer.SetClientSocketPoolManager(std::move(mock_pool_manager)); | 11677 session_peer.SetClientSocketPoolManager(std::move(mock_pool_manager)); |
11680 | 11678 |
11681 scoped_ptr<HttpTransaction> trans( | 11679 scoped_ptr<HttpTransaction> trans( |
11682 new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); | 11680 new HttpNetworkTransaction(DEFAULT_PRIORITY, session.get())); |
11683 TestCompletionCallback callback; | 11681 TestCompletionCallback callback; |
11684 | 11682 |
11685 const MockWrite kGet( | 11683 const MockWrite kGet( |
(...skipping 4273 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
15959 base::MessageLoop::current()->RunUntilIdle(); | 15957 base::MessageLoop::current()->RunUntilIdle(); |
15960 | 15958 |
15961 EXPECT_TRUE(trans.GetResponseInfo()->was_fetched_via_spdy); | 15959 EXPECT_TRUE(trans.GetResponseInfo()->was_fetched_via_spdy); |
15962 HttpRequestHeaders headers; | 15960 HttpRequestHeaders headers; |
15963 ASSERT_TRUE(trans.GetFullRequestHeaders(&headers)); | 15961 ASSERT_TRUE(trans.GetFullRequestHeaders(&headers)); |
15964 EXPECT_TRUE(headers.HasHeader(HttpRequestHeaders::kTokenBinding)); | 15962 EXPECT_TRUE(headers.HasHeader(HttpRequestHeaders::kTokenBinding)); |
15965 } | 15963 } |
15966 #endif // !defined(OS_IOS) | 15964 #endif // !defined(OS_IOS) |
15967 | 15965 |
15968 } // namespace net | 15966 } // namespace net |
OLD | NEW |