Comment 2 for bug 801346

Revision history for this message
In , Ian-x8 (ian-x8) wrote :

User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.5) Gecko/20091105 Fedora/3.5.5-1.fc11 Firefox/3.5.5
Build Identifier: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.5) Gecko/20091105 Fedora/3.5.5-1.fc11 Firefox/3.5.5

In the case of using "system" proxy settings and /system/http_proxy/use_same_proxy is not set, the SOCKS proxy is used in preference to the HTTP or FTP proxy.

This behaviour is wrong because the protocol specific protocols are more specific. For example, if one wants to specify an HTTP proxy but fall back to a SOCKS proxy for other protocols.

The relevant code is in nsUnixSystemProxySettings::GetProxyFromGConf(). It would be better (and simpler) IMO to only set the type to SOCKS if there is no protocol specific proxy setting

Reproducible: Always

Steps to Reproduce:
1. On a network with a suitable http proxy <proxy host> Set system proxy settings (using Gconf Editor, or Network Proxy Preferences applet etc) to:

/system/http_proxy/host <proxy host>
/system/http_proxy/port <proxy port>
/system/http_proxy/use_http_proxy true
/system/http_proxy/use_same_proxy false
/system/proxy/socks_host <invalid hostname>

2. Try to connect to a well known public web site
Actual Results:
Connection fails.

Expected Results:
Connection should have succeeded

As far as I can see, the logic for handling manually set proxies in the preferences UI is the same as I am proposing for system preferences.