summaryrefslogtreecommitdiffstats
path: root/net/proxy/proxy_resolver_js_bindings.h
diff options
context:
space:
mode:
authoreroman@chromium.org <eroman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-10-26 23:51:28 +0000
committereroman@chromium.org <eroman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-10-26 23:51:28 +0000
commit21f20c8940b8b9f06b04ff142716201a2530f0a3 (patch)
treed68fcccc003b0c7edb4ce7620f2270fb608d4022 /net/proxy/proxy_resolver_js_bindings.h
parent13d54f79c040c2e6beeed94e096d1fcf2b0f7101 (diff)
downloadchromium_src-21f20c8940b8b9f06b04ff142716201a2530f0a3.zip
chromium_src-21f20c8940b8b9f06b04ff142716201a2530f0a3.tar.gz
chromium_src-21f20c8940b8b9f06b04ff142716201a2530f0a3.tar.bz2
Add three of the six extensions to PAC that Internet Explorer supports.
The following descriptions were taken from <http://blogs.msdn.com/wndp/articles/IPV6_PAC_Extensions_v0_9.aspx> ---------------------------- * myIpAddressEx(): Returns a semi-colon delimited string containing all IP addresses for localhost (IPv6 and/or IPv4), or an empty string if unable to resolve localhost to an IP address. * dnsResolveEx(host): Returns semi-colon delimited string containing IPv6 and IPv4 addresses or an empty string if host is not resolvable. * isResolvableEx(): Returns TRUE if the host is resolvable to a IPv4 or IPv6 address, FALSE otherwise. ---------------------------- These differ from the vanilla PAC functions in the following ways: * myIpAddressEx() returns all the addrsses for localhost (including IPv6 ones), whereas myIpAddress() only returns the first IPv4 one. * On failure, myIpAddress() returns "127.0.0.1" whereas on failure myIpAddressEx() returns empty string. * dnsResolveEx() returns a list of addresses (including IPV6 ones), whereas dnsResolve() only returns the first IPv4 address. * On failure, dnsResolve() returns |null|, whereas on failure dnsResolveEx() returns empty string. BUG=25407 TEST=ProxyResolverV8Test.DNSResolutionFailure, ProxyResolverJSBindingsTest.RestrictAddressFamily, ProxyResolverJSBindingsTest.ExFunctionsReturnList Review URL: http://codereview.chromium.org/333006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30127 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/proxy/proxy_resolver_js_bindings.h')
-rw-r--r--net/proxy/proxy_resolver_js_bindings.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/net/proxy/proxy_resolver_js_bindings.h b/net/proxy/proxy_resolver_js_bindings.h
index 6eff69d..03ad61a 100644
--- a/net/proxy/proxy_resolver_js_bindings.h
+++ b/net/proxy/proxy_resolver_js_bindings.h
@@ -24,9 +24,21 @@ class ProxyResolverJSBindings {
// Handler for "myIpAddress()". Returns empty string on failure.
virtual std::string MyIpAddress() = 0;
+ // Handler for "myIpAddressEx()". Returns empty string on failure.
+ //
+ // This is a Microsoft extension to PAC for IPv6, see:
+ // http://blogs.msdn.com/wndp/articles/IPV6_PAC_Extensions_v0_9.aspx
+ virtual std::string MyIpAddressEx() = 0;
+
// Handler for "dnsResolve(host)". Returns empty string on failure.
virtual std::string DnsResolve(const std::string& host) = 0;
+ // Handler for "dnsResolveEx(host)". Returns empty string on failure.
+ //
+ // This is a Microsoft extension to PAC for IPv6, see:
+ // http://blogs.msdn.com/wndp/articles/IPV6_PAC_Extensions_v0_9.aspx
+ virtual std::string DnsResolveEx(const std::string& host) = 0;
+
// Handler for when an error is encountered. |line_number| may be -1
// if a line number is not applicable to this error.
virtual void OnError(int line_number, const std::string& error) = 0;