diff options
author | rch@chromium.org <rch@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-02-05 07:38:01 +0000 |
---|---|---|
committer | rch@chromium.org <rch@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-02-05 07:38:01 +0000 |
commit | a3c5c07dd1717fd7d372622bb51c8391aa54a35d (patch) | |
tree | 6eef2d04e32163e78bc09a965fe1f442d4765ac4 /net/proxy/proxy_server.cc | |
parent | ecf95d98d5ac5026b93eb2152ebc40351d5cb277 (diff) | |
download | chromium_src-a3c5c07dd1717fd7d372622bb51c8391aa54a35d.zip chromium_src-a3c5c07dd1717fd7d372622bb51c8391aa54a35d.tar.gz chromium_src-a3c5c07dd1717fd7d372622bb51c8391aa54a35d.tar.bz2 |
Implement support for QUIC proxies in ProxyServer
BUG=335275
Review URL: https://codereview.chromium.org/144623006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@248904 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/proxy/proxy_server.cc')
-rw-r--r-- | net/proxy/proxy_server.cc | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/net/proxy/proxy_server.cc b/net/proxy/proxy_server.cc index deb77913..b0997e0 100644 --- a/net/proxy/proxy_server.cc +++ b/net/proxy/proxy_server.cc @@ -36,6 +36,8 @@ ProxyServer::Scheme GetSchemeFromPacTypeInternal( return ProxyServer::SCHEME_DIRECT; if (LowerCaseEqualsASCII(begin, end, "https")) return ProxyServer::SCHEME_HTTPS; + if (LowerCaseEqualsASCII(begin, end, "quic")) + return ProxyServer::SCHEME_QUIC; return ProxyServer::SCHEME_INVALID; } @@ -57,6 +59,8 @@ ProxyServer::Scheme GetSchemeFromURIInternal(std::string::const_iterator begin, return ProxyServer::SCHEME_DIRECT; if (LowerCaseEqualsASCII(begin, end, "https")) return ProxyServer::SCHEME_HTTPS; + if (LowerCaseEqualsASCII(begin, end, "quic")) + return ProxyServer::SCHEME_QUIC; return ProxyServer::SCHEME_INVALID; } @@ -131,6 +135,8 @@ std::string ProxyServer::ToURI() const { return std::string("socks5://") + host_port_pair().ToString(); case SCHEME_HTTPS: return std::string("https://") + host_port_pair().ToString(); + case SCHEME_QUIC: + return std::string("quic://") + host_port_pair().ToString(); default: // Got called with an invalid scheme. NOTREACHED(); @@ -181,6 +187,8 @@ std::string ProxyServer::ToPacString() const { return std::string("SOCKS5 ") + host_port_pair().ToString(); case SCHEME_HTTPS: return std::string("HTTPS ") + host_port_pair().ToString(); + case SCHEME_QUIC: + return std::string("QUIC ") + host_port_pair().ToString(); default: // Got called with an invalid scheme. NOTREACHED(); @@ -197,10 +205,13 @@ int ProxyServer::GetDefaultPortForScheme(Scheme scheme) { case SCHEME_SOCKS5: return 1080; case SCHEME_HTTPS: + case SCHEME_QUIC: return 443; - default: - return -1; + case SCHEME_INVALID: + case SCHEME_DIRECT: + break; } + return -1; } // static |