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

Unified Diff: net/proxy/proxy_config.cc

Issue 3146029: Cleanup: rename ProxyRules::socks_proxy --> ProxyRules::fallback_proxy.... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: sync and include a new chromeos file Created 10 years, 4 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
« no previous file with comments | « net/proxy/proxy_config.h ('k') | net/proxy/proxy_config_service_common_unittest.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/proxy/proxy_config.cc
===================================================================
--- net/proxy/proxy_config.cc (revision 57274)
+++ net/proxy/proxy_config.cc (working copy)
@@ -53,7 +53,7 @@
<< " proxy_for_http: " << rules.proxy_for_http << "\n"
<< " proxy_for_https: " << rules.proxy_for_https << "\n"
<< " proxy_for_ftp: " << rules.proxy_for_ftp << "\n"
- << " socks_proxy: " << rules.socks_proxy << "\n"
+ << " fallback_proxy: " << rules.fallback_proxy << "\n"
<< " }";
}
@@ -88,8 +88,10 @@
out << " HTTPS: " << config.proxy_rules().proxy_for_https << "\n";
if (config.proxy_rules().proxy_for_ftp.is_valid())
out << " FTP: " << config.proxy_rules().proxy_for_ftp << "\n";
- if (config.proxy_rules().socks_proxy.is_valid())
- out << " SOCKS: " << config.proxy_rules().socks_proxy << "\n";
+ if (config.proxy_rules().fallback_proxy.is_valid()) {
+ out << " (fallback): "
+ << config.proxy_rules().fallback_proxy << "\n";
+ }
break;
}
@@ -126,7 +128,7 @@
proxy_for_http == other.proxy_for_http &&
proxy_for_https == other.proxy_for_https &&
proxy_for_ftp == other.proxy_for_ftp &&
- socks_proxy == other.socks_proxy &&
+ fallback_proxy == other.fallback_proxy &&
bypass_rules.Equals(other.bypass_rules) &&
reverse_bypass == other.reverse_bypass;
}
@@ -176,7 +178,7 @@
proxy_for_http = ProxyServer();
proxy_for_https = ProxyServer();
proxy_for_ftp = ProxyServer();
- socks_proxy = ProxyServer();
+ fallback_proxy = ProxyServer();
StringTokenizer proxy_server_list(proxy_rules, ";");
while (proxy_server_list.GetNext()) {
@@ -203,12 +205,22 @@
// Add it to the per-scheme mappings (if supported scheme).
type = TYPE_PROXY_PER_SCHEME;
- if (ProxyServer* entry = MapSchemeToProxy(url_scheme)) {
- std::string proxy_server_token = proxy_server_for_scheme.token();
- ProxyServer::Scheme scheme = (entry == &socks_proxy) ?
- ProxyServer::SCHEME_SOCKS4 : ProxyServer::SCHEME_HTTP;
- *entry = ProxyServer::FromURI(proxy_server_token, scheme);
+ ProxyServer* entry = MapUrlSchemeToProxyNoFallback(url_scheme);
+ ProxyServer::Scheme default_scheme = ProxyServer::SCHEME_HTTP;
+
+ // socks=XXX is inconsistent with the other formats, since "socks"
+ // is not a URL scheme. Rather this means "for everything else, send
+ // it to the SOCKS proxy server XXX".
+ if (url_scheme == "socks") {
+ DCHECK(!entry);
+ entry = &fallback_proxy;
+ default_scheme = ProxyServer::SCHEME_SOCKS4;
}
+
+ if (entry) {
+ *entry = ProxyServer::FromURI(proxy_server_for_scheme.token(),
+ default_scheme);
+ }
}
}
}
@@ -216,25 +228,23 @@
const ProxyServer* ProxyConfig::ProxyRules::MapUrlSchemeToProxy(
const std::string& url_scheme) const {
const ProxyServer* proxy_server =
- const_cast<ProxyRules*>(this)->MapSchemeToProxy(url_scheme);
+ const_cast<ProxyRules*>(this)->MapUrlSchemeToProxyNoFallback(url_scheme);
if (proxy_server && proxy_server->is_valid())
return proxy_server;
- if (socks_proxy.is_valid())
- return &socks_proxy;
+ if (fallback_proxy.is_valid())
+ return &fallback_proxy;
return NULL; // No mapping for this scheme. Use direct.
}
-ProxyServer* ProxyConfig::ProxyRules::MapSchemeToProxy(
+ProxyServer* ProxyConfig::ProxyRules::MapUrlSchemeToProxyNoFallback(
const std::string& scheme) {
- DCHECK(type == TYPE_PROXY_PER_SCHEME);
+ DCHECK_EQ(TYPE_PROXY_PER_SCHEME, type);
if (scheme == "http")
return &proxy_for_http;
if (scheme == "https")
return &proxy_for_https;
if (scheme == "ftp")
return &proxy_for_ftp;
- if (scheme == "socks")
- return &socks_proxy;
return NULL; // No mapping for this scheme.
}
« no previous file with comments | « net/proxy/proxy_config.h ('k') | net/proxy/proxy_config_service_common_unittest.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698