summaryrefslogtreecommitdiffstats
path: root/net/proxy/proxy_config.cc
Commit message (Collapse)AuthorAgeFilesLines
* FBTF: Move code from .h to .cc in net/erg@google.com2010-09-151-0/+26
| | | | | | | | | | | Shaves a cumulative 400k off libnet/browser.a BUG=none TEST=compiles Review URL: http://codereview.chromium.org/3432004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@59533 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor: Address a TODO about renaming a function.eroman@chromium.org2010-08-311-1/+6
| | | | | | Review URL: http://codereview.chromium.org/3216008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57959 0039d316-1c4b-4281-b951-d872f2087c98
* Move the pretty-printing of proxy settings from the C++ code to javascript.eroman@chromium.org2010-08-311-112/+52
| | | | | | | | Also, the javascript version does some fancier output -- it now only displays the relevant fields, and numbers the fallback order. Review URL: http://codereview.chromium.org/3219004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57949 0039d316-1c4b-4281-b951-d872f2087c98
* Cleanup: rename ProxyRules::socks_proxy --> ProxyRules::fallback_proxy.eroman@chromium.org2010-08-251-17/+27
| | | | | | | | BUG=None TEST=Compiles Review URL: http://codereview.chromium.org/3146029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57294 0039d316-1c4b-4281-b951-d872f2087c98
* Emit an event to NetLog whenever the proxy settings change.eroman@chromium.org2010-08-131-95/+116
| | | | | | | | | | Also removes the operator<< on ProxyConfig. BUG=52004 Review URL: http://codereview.chromium.org/3144008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@55999 0039d316-1c4b-4281-b951-d872f2087c98
* Move the number conversions from string_util to a new file.brettw@chromium.org2010-07-301-2/+4
| | | | | | | | | | | | | Use the base namespace in the new file. Update callers. I removed all wstring variants and also the string->number ones that ignore the return value. That encourages people to write code and forget about error handling. TEST=included unit tests BUG=none Review URL: http://codereview.chromium.org/3056029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54355 0039d316-1c4b-4281-b951-d872f2087c98
* Implement KDE ReversedException setting in Chromedavidben@chromium.org2010-06-141-3/+15
| | | | | | | | | | R=wtc,eroman BUG=45199 TEST=Added unit tests, can also verify with steps in bug report Review URL: http://codereview.chromium.org/2725009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49701 0039d316-1c4b-4281-b951-d872f2087c98
* ProxyConfig behaved like a struct, but was defined as a class.eroman@chromium.org2010-02-241-29/+69
| | | | | | | | | Changed it to be a proper class with hidden implementation variables, setters etc. Also seized this opportunity to move the bypass list from being a member of ProxyConfig, to being a member of ProxyRules. This is a more correct hiearchy, since the bypass rules only apply to the manual settings. Lastly, this makes it possible to have the manual rules evaluation be a method on ProxyRules, and shift some more code out of proxy_service. Review URL: http://codereview.chromium.org/651070 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39818 0039d316-1c4b-4281-b951-d872f2087c98
* Split out the handling of proxy bypass rules into ProxyBypassRules. There ↵eroman@chromium.org2010-02-191-78/+7
| | | | | | | | | | | | | | are some pretty complicated rules, and this helps isolate that code and better test it. This also lays a framework for addressing bug 9835 (IP/CIDR matching) Lastly, adds support for the exclusion format ".domain" on all platforms, which is interpreted as "*.domain". BUG=28112 TEST=ProxyBypassRulesTest.* Review URL: http://codereview.chromium.org/601070 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39486 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes to the string MatchPattern functions:tony@chromium.org2009-12-031-1/+2
| | | | | | | | | | | | | | | 1) Make it explicit that it only supports ASCII (since it iterates character by character). 2) Limit the recursion to 16 levels. We could allow more, but in the case of a ?, it has exponential complexity, so I figured 16 was a good stopping point. It seems rare that someone would have more than 16 '?' and '*'s. BUG=28645 Review URL: http://codereview.chromium.org/460047 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33748 0039d316-1c4b-4281-b951-d872f2087c98
* Use GURL::is_valid() in place of !GURL::is_empty() in a condition.eroman@chromium.org2009-11-101-1/+1
| | | | | | | | This is to be more consistent with another piece of code which tests is_valid() rather than is_empty(), in case there should be some difference between those. Review URL: http://codereview.chromium.org/385017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31614 0039d316-1c4b-4281-b951-d872f2087c98
* Aesthetic changes to the proxy configuration log format.eroman@chromium.org2009-09-061-14/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also in this change, I stop brodacasting the proxy settings changes to LOG(INFO) --- This is because navigating to "view-net-internal:proxyservice.config" offers a better solution, so no point polluting the log file. Note that the format change is intended to make the string more succint and human readable. For example, here is a before and after comparison: ------------ New version: ------------ Automatic settings: Auto-detect: No Custom PAC script: [None] Manual settings: Proxy server: [None] Bypass list: [None] Bypass local names: No ------------ Old version: ------------ { auto_detect: 0 pac_url: proxy_rules: { type: TYPE_NO_RULES single_proxy: proxy_for_http: proxy_for_https: proxy_for_ftp: socks_proxy: } proxy_bypass_local_names: 0 proxy_bypass_list: id: 1 } BUG=http://crbug.com/14478 TEST=ProxyConfigTest.ToString Review URL: http://codereview.chromium.org/198039 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@25584 0039d316-1c4b-4281-b951-d872f2087c98
* Whenever proxy configurations contain socks and http/https/ftp proxies, ↵arindam@chromium.org2009-07-141-17/+25
| | | | | | | | | | | | socks configuration over rid the other proxies. Fixes the issue. Attached test cases. BUG=15738 TEST=unittest (ProxyConfigTest.ParseProxyRules, ProxyServiceTest.DefaultProxyFallbackToSOCKS) Review URL: http://codereview.chromium.org/149191 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20605 0039d316-1c4b-4281-b951-d872f2087c98
* Original patch by pmarks@google.com (see http://codereview.chromium.org/113944)ericroman@google.com2009-06-231-4/+4
| | | | | | | | | | | | | | | | | | | | | | | - Pull in googleurl r107, which includes the new CanonicalizeHostVerbose() function: http://code.google.com/p/google-url/source/detail?r=107 - Atomically update Chromium to make use of this new function. This allows us to extract better information about IP addresses using fewer, and cleaner, calls to googleurl. - Also, change a call to CanonicalizeIPAddress() to stay compatible with r107. The upshot of all this is, Chrome will no longer try to connect to IPv4 addresses with overflow "http://192.168.0.257", or hostnames surrounded by square brackets "http://[google.com]" BUG=none TEST={unit_tests,googleurl_unittests,net_unittests} Review URL: http://codereview.chromium.org/146053 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19076 0039d316-1c4b-4281-b951-d872f2087c98
* Adding socks4 support for chromium. tested for windows and linux.arindam@chromium.org2009-06-231-0/+11
| | | | | | | | | | | | | | | includes socks4, socks4a TEST=change proxy settings to use proxy and set only the socks proxy fields (others must remain blank). Use CCProxy for windows or 'ssh -D' for linux / cygwin if trying it via localhost. Browser should successfully open both http and https URLs. tests are also at HttpNetworkTransactionTest.SOCKS* BUG=none Review URL: http://codereview.chromium.org/113811 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19005 0039d316-1c4b-4281-b951-d872f2087c98
* Making command-line specified proxy settings more flexible - allowing for ↵robertshield@google.com2009-05-121-0/+69
| | | | | | | | | | setting of auto-detect, pac url, per-schema proxy settings, proxy bypass urls. BUG=http://crbug.com/266 Review URL: http://codereview.chromium.org/115029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15855 0039d316-1c4b-4281-b951-d872f2087c98
* Get rid of the static next_id_ counter, to make construction of ProxyConfig ↵ericroman@google.com2009-05-041-5/+3
| | | | | | | | | on different threads safe. BUG=11323 Review URL: http://codereview.chromium.org/102023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15209 0039d316-1c4b-4281-b951-d872f2087c98
* ProxyConfigService for Linux.sdoyon@chromium.org2009-04-201-3/+2
| | | | | | | | | | | | | | | Establishes a ProxyConfig by reading settings from gconf or consulting environment variables. BUG=8143 Thanks to ermilov.maxim@gmail.com for his contribution: some ideas< and code snippets from his patch were folded into this one. (See http://codereview.chromium.org/49009) Review URL: http://codereview.chromium.org/60009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@14034 0039d316-1c4b-4281-b951-d872f2087c98
* Add some LOG(INFO) to help diagnose problems when proxy is not working.ericroman@google.com2009-04-131-0/+64
| | | | | | | | | - Dump the proxy configuration to LOG(INFO) each time it changes - Log each attempt at downloading a PAC script. Review URL: http://codereview.chromium.org/67053 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13601 0039d316-1c4b-4281-b951-d872f2087c98
* Extract the parsing of proxy rules to ProxyConfig::ProxyRules, and unit-test.ericroman@google.com2009-03-311-0/+54
| | | | | | | | | | This avoids re-parsing the rules every time a proxy resolve is done, and also adds extra tolerance for white space. The other motivation is to not have to fiddle around with strings as much in the various ProxyConfigServceXXXX implementations. Review URL: http://codereview.chromium.org/57011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@12829 0039d316-1c4b-4281-b951-d872f2087c98
* NO CODE CHANGEdeanm@chromium.org2009-03-111-1/+0
| | | | | | | | | Normalize end of file newlines in net/. All files end in a single newline. Review URL: http://codereview.chromium.org/43079 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11442 0039d316-1c4b-4281-b951-d872f2087c98
* split up proxy_service into several files (one per class).ericroman@google.com2009-03-021-0/+29
Review URL: http://codereview.chromium.org/28278 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10739 0039d316-1c4b-4281-b951-d872f2087c98