From 12f041de930a20a3df91f9f90c4fd518162ea82c Mon Sep 17 00:00:00 2001 From: dequis Date: Wed, 21 Oct 2015 10:14:17 -0300 Subject: socks4a proxy support (like socks4 with remote DNS) Fixes trac ticket 995 https://bugs.bitlbee.org/bitlbee/ticket/995 This is slightly pointless for the suggested use case (tor), since with socks5 we already send a hostname instead of an IP address. Either way, it was easy to implement, so I hope it helps. --- protocols/purple/purple.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'protocols') diff --git a/protocols/purple/purple.c b/protocols/purple/purple.c index b00d3078..a24b064a 100644 --- a/protocols/purple/purple.c +++ b/protocols/purple/purple.c @@ -121,6 +121,12 @@ static void purple_init(account_t *acc) purple_blist_load(); purple_prefs_load(); + + if (proxytype == PROXY_SOCKS4A) { + /* do this here after loading prefs. yes, i know, it sucks */ + purple_prefs_set_bool("/purple/proxy/socks4_remotedns", TRUE); + } + dir_fixed = TRUE; } @@ -1403,6 +1409,7 @@ void purple_initmodule() if (proxytype != PROXY_NONE) { PurpleProxyInfo *pi = purple_global_proxy_get_info(); switch (proxytype) { + case PROXY_SOCKS4A: case PROXY_SOCKS4: purple_proxy_info_set_type(pi, PURPLE_PROXY_SOCKS4); break; -- cgit v1.2.3