| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 "ios/chrome/browser/ios_chrome_io_thread.h" | 5 #include "ios/chrome/browser/ios_chrome_io_thread.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 | 8 |
| 9 #include <utility> | 9 #include <utility> |
| 10 #include <vector> | 10 #include <vector> |
| (...skipping 627 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 638 ¶ms->parse_alternative_services); | 638 ¶ms->parse_alternative_services); |
| 639 globals.enable_alternative_service_with_different_host.CopyToIfSet( | 639 globals.enable_alternative_service_with_different_host.CopyToIfSet( |
| 640 ¶ms->enable_alternative_service_with_different_host); | 640 ¶ms->enable_alternative_service_with_different_host); |
| 641 | 641 |
| 642 globals.enable_npn.CopyToIfSet(¶ms->enable_npn); | 642 globals.enable_npn.CopyToIfSet(¶ms->enable_npn); |
| 643 | 643 |
| 644 globals.enable_priority_dependencies.CopyToIfSet( | 644 globals.enable_priority_dependencies.CopyToIfSet( |
| 645 ¶ms->enable_priority_dependencies); | 645 ¶ms->enable_priority_dependencies); |
| 646 | 646 |
| 647 globals.enable_quic.CopyToIfSet(¶ms->enable_quic); | 647 globals.enable_quic.CopyToIfSet(¶ms->enable_quic); |
| 648 globals.enable_quic_for_proxies.CopyToIfSet(¶ms->enable_quic_for_proxies); | |
| 649 globals.quic_always_require_handshake_confirmation.CopyToIfSet( | 648 globals.quic_always_require_handshake_confirmation.CopyToIfSet( |
| 650 ¶ms->quic_always_require_handshake_confirmation); | 649 ¶ms->quic_always_require_handshake_confirmation); |
| 651 globals.quic_disable_connection_pooling.CopyToIfSet( | 650 globals.quic_disable_connection_pooling.CopyToIfSet( |
| 652 ¶ms->quic_disable_connection_pooling); | 651 ¶ms->quic_disable_connection_pooling); |
| 653 globals.quic_load_server_info_timeout_srtt_multiplier.CopyToIfSet( | 652 globals.quic_load_server_info_timeout_srtt_multiplier.CopyToIfSet( |
| 654 ¶ms->quic_load_server_info_timeout_srtt_multiplier); | 653 ¶ms->quic_load_server_info_timeout_srtt_multiplier); |
| 655 globals.quic_enable_connection_racing.CopyToIfSet( | 654 globals.quic_enable_connection_racing.CopyToIfSet( |
| 656 ¶ms->quic_enable_connection_racing); | 655 ¶ms->quic_enable_connection_racing); |
| 657 globals.quic_enable_non_blocking_io.CopyToIfSet( | 656 globals.quic_enable_non_blocking_io.CopyToIfSet( |
| 658 ¶ms->quic_enable_non_blocking_io); | 657 ¶ms->quic_enable_non_blocking_io); |
| (...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 745 | 744 |
| 746 ConfigureQuicGlobals(group, params, globals_); | 745 ConfigureQuicGlobals(group, params, globals_); |
| 747 } | 746 } |
| 748 | 747 |
| 749 void IOSChromeIOThread::ConfigureQuicGlobals( | 748 void IOSChromeIOThread::ConfigureQuicGlobals( |
| 750 base::StringPiece quic_trial_group, | 749 base::StringPiece quic_trial_group, |
| 751 const VariationParameters& quic_trial_params, | 750 const VariationParameters& quic_trial_params, |
| 752 IOSChromeIOThread::Globals* globals) { | 751 IOSChromeIOThread::Globals* globals) { |
| 753 bool enable_quic = ShouldEnableQuic(quic_trial_group); | 752 bool enable_quic = ShouldEnableQuic(quic_trial_group); |
| 754 globals->enable_quic.set(enable_quic); | 753 globals->enable_quic.set(enable_quic); |
| 755 bool enable_quic_for_proxies = ShouldEnableQuicForProxies(quic_trial_group); | |
| 756 globals->enable_quic_for_proxies.set(enable_quic_for_proxies); | |
| 757 | 754 |
| 758 if (ShouldQuicEnableAlternativeServicesForDifferentHost(quic_trial_params)) { | 755 if (ShouldQuicEnableAlternativeServicesForDifferentHost(quic_trial_params)) { |
| 759 globals->enable_alternative_service_with_different_host.set(true); | 756 globals->enable_alternative_service_with_different_host.set(true); |
| 760 globals->parse_alternative_services.set(true); | 757 globals->parse_alternative_services.set(true); |
| 761 } else { | 758 } else { |
| 762 globals->enable_alternative_service_with_different_host.set(false); | 759 globals->enable_alternative_service_with_different_host.set(false); |
| 763 } | 760 } |
| 764 | 761 |
| 765 if (enable_quic) { | 762 if (enable_quic) { |
| 766 globals->quic_always_require_handshake_confirmation.set( | 763 globals->quic_always_require_handshake_confirmation.set( |
| (...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 819 supported_versions.push_back(version); | 816 supported_versions.push_back(version); |
| 820 globals->quic_supported_versions.set(supported_versions); | 817 globals->quic_supported_versions.set(supported_versions); |
| 821 } | 818 } |
| 822 } | 819 } |
| 823 | 820 |
| 824 bool IOSChromeIOThread::ShouldEnableQuic(base::StringPiece quic_trial_group) { | 821 bool IOSChromeIOThread::ShouldEnableQuic(base::StringPiece quic_trial_group) { |
| 825 return quic_trial_group.starts_with(kQuicFieldTrialEnabledGroupName) || | 822 return quic_trial_group.starts_with(kQuicFieldTrialEnabledGroupName) || |
| 826 quic_trial_group.starts_with(kQuicFieldTrialHttpsEnabledGroupName); | 823 quic_trial_group.starts_with(kQuicFieldTrialHttpsEnabledGroupName); |
| 827 } | 824 } |
| 828 | 825 |
| 829 bool IOSChromeIOThread::ShouldEnableQuicForProxies( | |
| 830 base::StringPiece quic_trial_group) { | |
| 831 return ShouldEnableQuic(quic_trial_group) || | |
| 832 ShouldEnableQuicForDataReductionProxy(); | |
| 833 } | |
| 834 | |
| 835 bool IOSChromeIOThread::ShouldEnableQuicForDataReductionProxy() { | |
| 836 return data_reduction_proxy::params::IsIncludedInQuicFieldTrial(); | |
| 837 } | |
| 838 | |
| 839 net::QuicTagVector IOSChromeIOThread::GetQuicConnectionOptions( | 826 net::QuicTagVector IOSChromeIOThread::GetQuicConnectionOptions( |
| 840 const VariationParameters& quic_trial_params) { | 827 const VariationParameters& quic_trial_params) { |
| 841 VariationParameters::const_iterator it = | 828 VariationParameters::const_iterator it = |
| 842 quic_trial_params.find("connection_options"); | 829 quic_trial_params.find("connection_options"); |
| 843 if (it == quic_trial_params.end()) { | 830 if (it == quic_trial_params.end()) { |
| 844 return net::QuicTagVector(); | 831 return net::QuicTagVector(); |
| 845 } | 832 } |
| 846 | 833 |
| 847 return net::QuicUtils::ParseQuicConnectionOptions(it->second); | 834 return net::QuicUtils::ParseQuicConnectionOptions(it->second); |
| 848 } | 835 } |
| (...skipping 174 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1023 | 1010 |
| 1024 globals->system_http_network_session.reset( | 1011 globals->system_http_network_session.reset( |
| 1025 new net::HttpNetworkSession(system_params)); | 1012 new net::HttpNetworkSession(system_params)); |
| 1026 globals->system_http_transaction_factory.reset( | 1013 globals->system_http_transaction_factory.reset( |
| 1027 new net::HttpNetworkLayer(globals->system_http_network_session.get())); | 1014 new net::HttpNetworkLayer(globals->system_http_network_session.get())); |
| 1028 context->set_http_transaction_factory( | 1015 context->set_http_transaction_factory( |
| 1029 globals->system_http_transaction_factory.get()); | 1016 globals->system_http_transaction_factory.get()); |
| 1030 | 1017 |
| 1031 return context; | 1018 return context; |
| 1032 } | 1019 } |
| OLD | NEW |