Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(142)

Unified Diff: net/http/http_stream_factory_impl_job.cc

Issue 903213003: Enable QUIC for proxies based on Finch config and command line switch. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixed formatting Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: net/http/http_stream_factory_impl_job.cc
diff --git a/net/http/http_stream_factory_impl_job.cc b/net/http/http_stream_factory_impl_job.cc
index 8729dfbba293736b550fd70027c9852804520ffa..78e5498a0f4c675da316461ff1f8b156f6d36ae7 100644
--- a/net/http/http_stream_factory_impl_job.cc
+++ b/net/http/http_stream_factory_impl_job.cc
@@ -91,6 +91,7 @@ HttpStreamFactoryImpl::Job::Job(HttpStreamFactoryImpl* stream_factory,
using_ssl_(false),
using_spdy_(false),
using_quic_(false),
+ using_quic_proxy_(false),
quic_request_(session_->quic_stream_factory()),
using_existing_quic_session_(false),
spdy_certificate_error_(OK),
@@ -671,10 +672,15 @@ int HttpStreamFactoryImpl::Job::DoResolveProxyComplete(int result) {
if (result == OK) {
// Remove unsupported proxies from the list.
- proxy_info_.RemoveProxiesWithoutScheme(
- ProxyServer::SCHEME_DIRECT | ProxyServer::SCHEME_QUIC |
- ProxyServer::SCHEME_HTTP | ProxyServer::SCHEME_HTTPS |
- ProxyServer::SCHEME_SOCKS4 | ProxyServer::SCHEME_SOCKS5);
+ int supported_proxies =
+ ProxyServer::SCHEME_DIRECT | ProxyServer::SCHEME_HTTP |
+ ProxyServer::SCHEME_HTTPS | ProxyServer::SCHEME_SOCKS4 |
+ ProxyServer::SCHEME_SOCKS5;
+
+ if (session_->params().enable_quic_for_proxies)
+ supported_proxies |= ProxyServer::SCHEME_QUIC;
+
+ proxy_info_.RemoveProxiesWithoutScheme(supported_proxies);
if (proxy_info_.is_empty()) {
// No proxies/direct to choose from. This happens when we don't support
@@ -747,11 +753,16 @@ int HttpStreamFactoryImpl::Job::DoInitConnection() {
if (ShouldForceQuic())
using_quic_ = true;
- if (proxy_info_.is_quic())
+ if (using_quic_)
+ DCHECK(session_->params().enable_quic);
bengr 2015/02/11 23:57:28 Release builds won't have this statement.
tbansal1 2015/02/12 02:27:22 I believe that's WAI.
bengr 2015/02/12 17:14:46 That can't be the case. In a release build, the co
tbansal1 2015/02/13 17:10:39 Fixed.
+
+ if (proxy_info_.is_quic()) {
using_quic_ = true;
+ using_quic_proxy_ = true;
+ DCHECK(session_->params().enable_quic_for_proxies);
bengr 2015/02/11 23:57:28 Release builds won't have this statement.
tbansal1 2015/02/12 02:27:22 I believe that's WAI.
tbansal1 2015/02/13 17:10:39 This is still okay.
+ }
if (using_quic_) {
- DCHECK(session_->params().enable_quic);
if (proxy_info_.is_quic() && !request_info_.url.SchemeIs("http")) {
NOTREACHED();
// TODO(rch): support QUIC proxies for HTTPS urls.

Powered by Google App Engine
This is Rietveld 408576698