| Index: chrome/browser/io_thread.cc
|
| diff --git a/chrome/browser/io_thread.cc b/chrome/browser/io_thread.cc
|
| index 9ef53eeac4556f6865d2b244199b8d94a453161e..89e0693b134952bdb7dcfc24177b82162eed7c2d 100644
|
| --- a/chrome/browser/io_thread.cc
|
| +++ b/chrome/browser/io_thread.cc
|
| @@ -41,6 +41,7 @@
|
| #include "chrome/common/chrome_version_info.h"
|
| #include "chrome/common/pref_names.h"
|
| #include "components/data_reduction_proxy/core/browser/data_reduction_proxy_prefs.h"
|
| +#include "components/data_reduction_proxy/core/common/data_reduction_proxy_params.h"
|
| #include "components/policy/core/common/policy_service.h"
|
| #include "components/variations/variations_associated_data.h"
|
| #include "content/public/browser/browser_thread.h"
|
| @@ -1030,6 +1031,7 @@ void IOThread::InitializeNetworkSessionParamsFromGlobals(
|
| ¶ms->alternate_protocol_probability_threshold);
|
|
|
| globals.enable_quic.CopyToIfSet(¶ms->enable_quic);
|
| + globals.enable_quic_for_proxies.CopyToIfSet(¶ms->enable_quic_for_proxies);
|
| globals.quic_always_require_handshake_confirmation.CopyToIfSet(
|
| ¶ms->quic_always_require_handshake_confirmation);
|
| globals.quic_disable_connection_pooling.CopyToIfSet(
|
| @@ -1150,6 +1152,9 @@ void IOThread::ConfigureQuicGlobals(
|
| IOThread::Globals* globals) {
|
| bool enable_quic = ShouldEnableQuic(command_line, quic_trial_group);
|
| globals->enable_quic.set(enable_quic);
|
| + bool enable_quic_for_proxies = ShouldEnableQuicForProxies(command_line,
|
| + quic_trial_group);
|
| + globals->enable_quic_for_proxies.set(enable_quic_for_proxies);
|
| if (enable_quic) {
|
| globals->quic_always_require_handshake_confirmation.set(
|
| ShouldQuicAlwaysRequireHandshakeConfirmation(quic_trial_params));
|
| @@ -1229,6 +1234,25 @@ bool IOThread::ShouldEnableQuic(const base::CommandLine& command_line,
|
| quic_trial_group.starts_with(kQuicFieldTrialHttpsEnabledGroupName);
|
| }
|
|
|
| +// static
|
| +std::string IOThread::QuicFieldTrialName() {
|
| + std::string group =
|
| + base::FieldTrialList::FindFullName(kQuicFieldTrialName);
|
| + return group;
|
| +}
|
| +
|
| +// static
|
| +bool IOThread::ShouldEnableQuicForProxies(
|
| + const base::CommandLine& command_line,
|
| + base::StringPiece quic_trial_group) {
|
| + if (command_line.HasSwitch(switches::kDisableQuic))
|
| + return false;
|
| +
|
| + return ShouldEnableQuic(command_line, quic_trial_group) ||
|
| + data_reduction_proxy::DataReductionProxyParams::
|
| + IsIncludedInUseQUICFieldTrial();
|
| +}
|
| +
|
| bool IOThread::ShouldEnableQuicPortSelection(
|
| const base::CommandLine& command_line) {
|
| if (command_line.HasSwitch(switches::kDisableQuicPortSelection))
|
|
|