diff options
author | eroman@chromium.org <eroman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-09-27 19:13:36 +0000 |
---|---|---|
committer | eroman@chromium.org <eroman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-09-27 19:13:36 +0000 |
commit | 6be52b9d4c99cba44fde417cff215018d1dad9db (patch) | |
tree | 0eddab971839fcf8d06c997896a6cb5216b1be4e /net/proxy | |
parent | b27f1620e996e18ecdc424e224a6763286a040ae (diff) | |
download | chromium_src-6be52b9d4c99cba44fde417cff215018d1dad9db.zip chromium_src-6be52b9d4c99cba44fde417cff215018d1dad9db.tar.gz chromium_src-6be52b9d4c99cba44fde417cff215018d1dad9db.tar.bz2 |
Change the meaning of the command-line flag --proxy-server="socks://foo" to imply a SOCKS v5 proxy server rather than a SOCKS v4 proxy server.
BUG=56831
Review URL: http://codereview.chromium.org/3388021
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60691 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/proxy')
-rw-r--r-- | net/proxy/proxy_config_service_win_unittest.cc | 6 | ||||
-rw-r--r-- | net/proxy/proxy_server.cc | 2 | ||||
-rw-r--r-- | net/proxy/proxy_server.h | 1 | ||||
-rw-r--r-- | net/proxy/proxy_server_unittest.cc | 14 |
4 files changed, 14 insertions, 9 deletions
diff --git a/net/proxy/proxy_config_service_win_unittest.cc b/net/proxy/proxy_config_service_win_unittest.cc index 1d4f45d..72b49cf 100644 --- a/net/proxy/proxy_config_service_win_unittest.cc +++ b/net/proxy/proxy_config_service_win_unittest.cc @@ -103,7 +103,7 @@ TEST(ProxyConfigServiceWinTest, SetFromIEConfig) { ""), // bypass rules }, - // SOCKS proxy configuration + // SOCKS proxy configuration. { { // Input. FALSE, // fAutoDetect @@ -114,6 +114,10 @@ TEST(ProxyConfigServiceWinTest, SetFromIEConfig) { }, // Expected result. + // Note that "socks" is interprted as meaning "socks4", since that is how + // Internet Explorer applies the settings. For more details on this + // policy, see: + // http://code.google.com/p/chromium/issues/detail?id=55912#c2 false, // auto_detect GURL(), // pac_url ProxyRulesExpectation::PerSchemeWithSocks( diff --git a/net/proxy/proxy_server.cc b/net/proxy/proxy_server.cc index 1cb6e68..0bcf89c 100644 --- a/net/proxy/proxy_server.cc +++ b/net/proxy/proxy_server.cc @@ -50,7 +50,7 @@ ProxyServer::Scheme GetSchemeFromURI(std::string::const_iterator begin, if (LowerCaseEqualsASCII(begin, end, "socks4")) return ProxyServer::SCHEME_SOCKS4; if (LowerCaseEqualsASCII(begin, end, "socks")) - return ProxyServer::SCHEME_SOCKS4; + return ProxyServer::SCHEME_SOCKS5; if (LowerCaseEqualsASCII(begin, end, "socks5")) return ProxyServer::SCHEME_SOCKS5; if (LowerCaseEqualsASCII(begin, end, "direct")) diff --git a/net/proxy/proxy_server.h b/net/proxy/proxy_server.h index dea910e..3786ddb 100644 --- a/net/proxy/proxy_server.h +++ b/net/proxy/proxy_server.h @@ -72,6 +72,7 @@ class ProxyServer { // // Examples (for |default_scheme| = SCHEME_HTTP ): // "foopy" {scheme=HTTP, host="foopy", port=80} + // "socks://foopy" {scheme=SOCKS5, host="foopy", port=1080} // "socks4://foopy" {scheme=SOCKS4, host="foopy", port=1080} // "socks5://foopy" {scheme=SOCKS5, host="foopy", port=1080} // "http://foopy:17" {scheme=HTTP, host="foopy", port=17} diff --git a/net/proxy/proxy_server_unittest.cc b/net/proxy/proxy_server_unittest.cc index 2d470b1..7646467 100644 --- a/net/proxy/proxy_server_unittest.cc +++ b/net/proxy/proxy_server_unittest.cc @@ -114,22 +114,22 @@ TEST(ProxyServerTest, FromURI) { "SOCKS5 foopy:10" }, - // SOCKS proxy URIs (should default to SOCKS4) + // SOCKS proxy URIs (should default to SOCKS5) { "socks://foopy", // No port. - "socks4://foopy:1080", - net::ProxyServer::SCHEME_SOCKS4, + "socks5://foopy:1080", + net::ProxyServer::SCHEME_SOCKS5, "foopy", 1080, - "SOCKS foopy:1080" + "SOCKS5 foopy:1080" }, { "socks://foopy:10", - "socks4://foopy:10", - net::ProxyServer::SCHEME_SOCKS4, + "socks5://foopy:10", + net::ProxyServer::SCHEME_SOCKS5, "foopy", 10, - "SOCKS foopy:10" + "SOCKS5 foopy:10" }, // HTTPS proxy URIs: |