diff options
| author | dequis <dx@dxzone.com.ar> | 2015-10-21 10:14:17 -0300 | 
|---|---|---|
| committer | dequis <dx@dxzone.com.ar> | 2015-10-21 10:14:17 -0300 | 
| commit | 12f041de930a20a3df91f9f90c4fd518162ea82c (patch) | |
| tree | bfe4f8b160ea4707d2600b73eb0e28d3b5f505c8 /protocols | |
| parent | 3314ced0efff64ce4f92caf24b9272f5249c3a17 (diff) | |
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.
Diffstat (limited to 'protocols')
| -rw-r--r-- | protocols/purple/purple.c | 7 | 
1 files changed, 7 insertions, 0 deletions
| 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; | 
