Torified surf is unstable
authorGhostAV <ghostav@riseup.net>
Tue, 18 Aug 2015 10:46:34 +0000 (12:46 +0200)
committerChristoph Lohmann <20h@r-36.net>
Tue, 18 Aug 2015 15:43:18 +0000 (17:43 +0200)
On Tue, Aug 18, 2015 at 12:38:40PM +0200, Gabriel PĂ©rez-Cerezo wrote:
> It really seems  to be a problem with torsocks.  I have already solved
> this problem with a patch GhostAV just  sent me on this list that adds
> SOCKS support to surf. It works fine now.

As i failed to send the patch to the list, i resend it now:
-- >8 --
From: Jonas Rabenstein <jonas.rabenstein@studium.uni-erlangen.de>
Subject: [PATCH] allow sock proxies

Signed-off-by: Christoph Lohmann <20h@r-36.net>
surf.c

diff --git a/surf.c b/surf.c
index 87c10ef..02656ec 100644 (file)
--- a/surf.c
+++ b/surf.c
@@ -1270,8 +1270,12 @@ setup(void) {
 
        /* proxy */
        if((proxy = getenv("http_proxy")) && strcmp(proxy, "")) {
-               new_proxy = g_strrstr(proxy, "http://") ? g_strdup(proxy) :
-                       g_strdup_printf("http://%s", proxy);
+               new_proxy = g_strrstr(proxy, "http://")
+            || g_strrstr(proxy, "socks://")
+            || g_strrstr(proxy, "socks4://")
+            || g_strrstr(proxy, "socks5://")
+            ? g_strdup(proxy)
+            : g_strdup_printf("http://%s", proxy);
                puri = soup_uri_new(new_proxy);
                g_object_set(G_OBJECT(s), "proxy-uri", puri, NULL);
                soup_uri_free(puri);