summaryrefslogtreecommitdiffstats
path: root/net/proxy/init_proxy_resolver.h
diff options
context:
space:
mode:
authoreroman@chromium.org <eroman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-08-28 01:17:56 +0000
committereroman@chromium.org <eroman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-08-28 01:17:56 +0000
commitd747ef3e95dbcae4f31d6584c150cafd15e7feb4 (patch)
tree17fbfb8acbda36ea80e288aca2fea319e79075d4 /net/proxy/init_proxy_resolver.h
parentfacefc587f0124781b9dd08f91ebe03019afb51e (diff)
downloadchromium_src-d747ef3e95dbcae4f31d6584c150cafd15e7feb4.zip
chromium_src-d747ef3e95dbcae4f31d6584c150cafd15e7feb4.tar.gz
chromium_src-d747ef3e95dbcae4f31d6584c150cafd15e7feb4.tar.bz2
Display the "effective" proxy settings in about:net-internals.
The "effective" settings is what you get after applying the various fallbacks between automatic and manual settings. This display makes it easier to notice whether "auto-detect" actually took effect, and if so what was the PAC URL it used. BUG=53549 TEST=On windows change your proxy settings to include both auto-detect, a custom pac script, and some manually configured proxy servers. Now run chrome and go to the proxy tab on about:net-internals. Check that the "original" settings is what you entered in the dialog box, however the "effective" settings will only be a subset of them. Review URL: http://codereview.chromium.org/3241002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@57767 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/proxy/init_proxy_resolver.h')
-rw-r--r--net/proxy/init_proxy_resolver.h11
1 files changed, 10 insertions, 1 deletions
diff --git a/net/proxy/init_proxy_resolver.h b/net/proxy/init_proxy_resolver.h
index 1bdb4e8..2691be5 100644
--- a/net/proxy/init_proxy_resolver.h
+++ b/net/proxy/init_proxy_resolver.h
@@ -48,11 +48,18 @@ class InitProxyResolver {
// Aborts any in-progress request.
~InitProxyResolver();
- // Apply the PAC settings of |config| to |resolver_|.
+ // Applies the PAC settings of |config| to |resolver_|.
// If |wait_delay| is positive, the initialization will pause for this
// amount of time before getting started.
+ // If |effective_config| is non-NULL, then on successful initialization of
+ // |resolver_| the "effective" proxy settings we ended up using will be
+ // written out to |*effective_config|. Note that this may differ from
+ // |config| since we will have stripped any manual settings, and decided
+ // whether to use auto-detect or the custom PAC URL. Finally, if auto-detect
+ // was used we may now have resolved that to a specific script URL.
int Init(const ProxyConfig& config,
const base::TimeDelta wait_delay,
+ ProxyConfig* effective_config,
CompletionCallback* callback);
private:
@@ -127,6 +134,8 @@ class InitProxyResolver {
base::TimeDelta wait_delay_;
base::OneShotTimer<InitProxyResolver> wait_timer_;
+ ProxyConfig* effective_config_;
+
DISALLOW_COPY_AND_ASSIGN(InitProxyResolver);
};