diff options
Diffstat (limited to 'toolkit/system')
4 files changed, 36 insertions, 0 deletions
diff --git a/toolkit/system/androidproxy/nsAndroidSystemProxySettings.cpp b/toolkit/system/androidproxy/nsAndroidSystemProxySettings.cpp index e60d0f3821..15dabfe14f 100644 --- a/toolkit/system/androidproxy/nsAndroidSystemProxySettings.cpp +++ b/toolkit/system/androidproxy/nsAndroidSystemProxySettings.cpp @@ -43,6 +43,12 @@ nsresult nsAndroidSystemProxySettings::GetProxyForURI(const nsACString& aSpec, aPort, aResult); } +NS_IMETHODIMP +nsAndroidSystemProxySettings::GetSystemWPADSetting(bool* aSystemWPADSetting) { + *aSystemWPADSetting = false; + return NS_OK; +} + void test(){}; NS_IMPL_COMPONENT_FACTORY(nsAndroidSystemProxySettings) { diff --git a/toolkit/system/osxproxy/nsOSXSystemProxySettings.mm b/toolkit/system/osxproxy/nsOSXSystemProxySettings.mm index b1ad41ccc1..27c7b47148 100644 --- a/toolkit/system/osxproxy/nsOSXSystemProxySettings.mm +++ b/toolkit/system/osxproxy/nsOSXSystemProxySettings.mm @@ -68,6 +68,12 @@ nsOSXSystemProxySettings::GetMainThreadOnly(bool* aMainThreadOnly) { return NS_OK; } +NS_IMETHODIMP +nsOSXSystemProxySettings::GetSystemWPADSetting(bool* aSystemWPADSetting) { + *aSystemWPADSetting = false; + return NS_OK; +} + // Mapping of URI schemes to SystemConfiguration keys const nsOSXSystemProxySettings::SchemeMapping nsOSXSystemProxySettings::gSchemeMappingList[] = { @@ -400,6 +406,11 @@ OSXSystemProxySettingsAsync::GetPACURI(nsACString& aResult) { } NS_IMETHODIMP +OSXSystemProxySettingsAsync::GetSystemWPADSetting(bool* aSystemWPADSetting) { + return nsOSXSystemProxySettings::GetSystemWPADSetting(aSystemWPADSetting); +} + +NS_IMETHODIMP OSXSystemProxySettingsAsync::GetProxyForURI(const nsACString& aSpec, const nsACString& aScheme, const nsACString& aHost, diff --git a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp b/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp index 1b6d6223c4..4c84041ef3 100644 --- a/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp +++ b/toolkit/system/unixproxy/nsUnixSystemProxySettings.cpp @@ -398,6 +398,12 @@ nsresult nsUnixSystemProxySettings::GetProxyForURI(const nsACString& aSpec, return GetProxyFromEnvironment(aScheme, aHost, aPort, aResult); } +NS_IMETHODIMP +nsUnixSystemProxySettings::GetSystemWPADSetting(bool* aSystemWPADSetting) { + *aSystemWPADSetting = false; + return NS_OK; +} + NS_IMPL_COMPONENT_FACTORY(nsUnixSystemProxySettings) { auto result = MakeRefPtr<nsUnixSystemProxySettings>(); result->Init(); diff --git a/toolkit/system/windowsproxy/nsWindowsSystemProxySettings.cpp b/toolkit/system/windowsproxy/nsWindowsSystemProxySettings.cpp index 7921cb60a2..94487505c3 100644 --- a/toolkit/system/windowsproxy/nsWindowsSystemProxySettings.cpp +++ b/toolkit/system/windowsproxy/nsWindowsSystemProxySettings.cpp @@ -241,6 +241,19 @@ nsresult nsWindowsSystemProxySettings::GetProxyForURI(const nsACString& aSpec, return NS_OK; } +NS_IMETHODIMP nsWindowsSystemProxySettings::GetSystemWPADSetting( + bool* aSystemWPADSetting) { + nsresult rv; + uint32_t flags = 0; + nsAutoString buf; + + rv = ReadInternetOption(INTERNET_PER_CONN_AUTOCONFIG_URL, flags, buf); + *aSystemWPADSetting = + (flags & (PROXY_TYPE_AUTO_PROXY_URL | PROXY_TYPE_AUTO_DETECT)) == + PROXY_TYPE_AUTO_DETECT; + return rv; +} + NS_IMPL_COMPONENT_FACTORY(nsWindowsSystemProxySettings) { return mozilla::MakeAndAddRef<nsWindowsSystemProxySettings>() .downcast<nsISupports>(); |