Bug 111257 - WebKitGTK fails to connect via HTTP if only SOCKS proxy is specified, but connects to HTTPS
Summary: WebKitGTK fails to connect via HTTP if only SOCKS proxy is specified, but con...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKitGTK (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL: https://bugzilla.gnome.org/show_bug.c...
Keywords: Gtk, Soup
Depends on:
Blocks:
 
Reported: 2013-03-02 14:19 PST by Christian Stadelmann
Modified: 2013-07-01 15:55 PDT (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Christian Stadelmann 2013-03-02 14:19:50 PST
Using current Epiphany 3.6.1, Eclipse 4.2.1, webkitgtk 1.10.2-2, etc. from Fedora 18

Steps to reproduce:
1. Configure a proxy in gnome-control-center only for SOCKS (e.g. tor without
privoxy/polipo/…)
2. Do not enable the other proxies (no hostname, port is set to 0)
3. start epiphany, try to access some sites

What is expected:
A) All traffic should be routed through TOR via SOCKS (if Epiphany supports
SOCKS which it does, at least partly)
B) (if Epiphany did not support SOCKS proxies) ignore proxy settings at all

What actually happens:
HTTPS connections work fine.
HTTP connections can not be established.

Epiphany can for example connect to https://en.wikipedia.org/wiki/Main_Page ,
but not to http://en.wikipedia.org/wiki/Main_Page

Same behavior for the internal browsers from liferea and eclipse
Comment 1 Christian Stadelmann 2013-03-02 15:35:31 PST
For every HTTP-only URL webkit tries to load tor (the SOCKS proxy I currently use) logs:
~~~~~
[notice] Application asked to connect to port 0. Refusing.
[warn] socks4: Port or DestIP is zero. Rejecting.
[warn] Fetching socks handshake failed. Closing.
[warn] socks4: Port or DestIP is zero. Rejecting.
[warn] Fetching socks handshake failed. Closing.
~~~~~

Seems like webkitgtk or libsoup read all proxy settings and ignore that (according to the GSettings Schema http://git.gnome.org/browse/gsettings-desktop-schemas/tree/schemas/org.gnome.system.proxy.gschema.xml.in.in ) an empty host name or a port number 0 disables the proxy for that protocol. In other words: the data read from org.gnome.system.proxy.* is misinterpreted.
Comment 2 Christian Stadelmann 2013-07-01 15:55:58 PDT
Fixed for me in Gnome 3.8 on Fedora 19. Thanks!