summaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authoreroman@chromium.org <eroman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-09-27 19:13:36 +0000
committereroman@chromium.org <eroman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-09-27 19:13:36 +0000
commit6be52b9d4c99cba44fde417cff215018d1dad9db (patch)
tree0eddab971839fcf8d06c997896a6cb5216b1be4e /net
parentb27f1620e996e18ecdc424e224a6763286a040ae (diff)
downloadchromium_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')
-rw-r--r--net/proxy/proxy_config_service_win_unittest.cc6
-rw-r--r--net/proxy/proxy_server.cc2
-rw-r--r--net/proxy/proxy_server.h1
-rw-r--r--net/proxy/proxy_server_unittest.cc14
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: