comparison libpurple/proxy.c @ 31929:9a7c5d242521

Add a new proxy type of "Tor". This is really just a SOCKS5 proxy, but can be used to restrict functionality (e.g. DNS lookups) for privacy reasons. Refs #11110
author Daniel Atallah <daniel.atallah@gmail.com>
date Tue, 19 Apr 2011 04:41:59 +0000
parents 7c871249318b
children 0eceb1304f53
comparison
equal deleted inserted replaced
31928:f0de3178dd87 31929:9a7c5d242521
2135 case PURPLE_PROXY_SOCKS4: 2135 case PURPLE_PROXY_SOCKS4:
2136 proxy_connect_socks4(connect_data, addr, addrlen); 2136 proxy_connect_socks4(connect_data, addr, addrlen);
2137 break; 2137 break;
2138 2138
2139 case PURPLE_PROXY_SOCKS5: 2139 case PURPLE_PROXY_SOCKS5:
2140 case PURPLE_PROXY_TOR:
2140 proxy_connect_socks5(connect_data, addr, addrlen); 2141 proxy_connect_socks5(connect_data, addr, addrlen);
2141 break; 2142 break;
2142 2143
2143 case PURPLE_PROXY_USE_ENVVAR: 2144 case PURPLE_PROXY_USE_ENVVAR:
2144 proxy_connect_http(connect_data, addr, addrlen); 2145 proxy_connect_http(connect_data, addr, addrlen);
2297 break; 2298 break;
2298 2299
2299 case PURPLE_PROXY_HTTP: 2300 case PURPLE_PROXY_HTTP:
2300 case PURPLE_PROXY_SOCKS4: 2301 case PURPLE_PROXY_SOCKS4:
2301 case PURPLE_PROXY_SOCKS5: 2302 case PURPLE_PROXY_SOCKS5:
2303 case PURPLE_PROXY_TOR:
2302 case PURPLE_PROXY_USE_ENVVAR: 2304 case PURPLE_PROXY_USE_ENVVAR:
2303 connecthost = purple_proxy_info_get_host(connect_data->gpi); 2305 connecthost = purple_proxy_info_get_host(connect_data->gpi);
2304 connectport = purple_proxy_info_get_port(connect_data->gpi); 2306 connectport = purple_proxy_info_get_port(connect_data->gpi);
2305 break; 2307 break;
2306 2308
2363 break; 2365 break;
2364 2366
2365 case PURPLE_PROXY_HTTP: 2367 case PURPLE_PROXY_HTTP:
2366 case PURPLE_PROXY_SOCKS4: 2368 case PURPLE_PROXY_SOCKS4:
2367 case PURPLE_PROXY_SOCKS5: 2369 case PURPLE_PROXY_SOCKS5:
2370 case PURPLE_PROXY_TOR:
2368 case PURPLE_PROXY_USE_ENVVAR: 2371 case PURPLE_PROXY_USE_ENVVAR:
2369 purple_debug_info("proxy", "Ignoring Proxy type (%d) for UDP.\n", 2372 purple_debug_info("proxy", "Ignoring Proxy type (%d) for UDP.\n",
2370 purple_proxy_info_get_type(connect_data->gpi)); 2373 purple_proxy_info_get_type(connect_data->gpi));
2371 break; 2374 break;
2372 2375
2468 proxytype = PURPLE_PROXY_HTTP; 2471 proxytype = PURPLE_PROXY_HTTP;
2469 else if (purple_strequal(type, "socks4")) 2472 else if (purple_strequal(type, "socks4"))
2470 proxytype = PURPLE_PROXY_SOCKS4; 2473 proxytype = PURPLE_PROXY_SOCKS4;
2471 else if (purple_strequal(type, "socks5")) 2474 else if (purple_strequal(type, "socks5"))
2472 proxytype = PURPLE_PROXY_SOCKS5; 2475 proxytype = PURPLE_PROXY_SOCKS5;
2476 else if (purple_strequal(type, "tor"))
2477 proxytype = PURPLE_PROXY_TOR;
2473 else if (purple_strequal(type, "envvar")) 2478 else if (purple_strequal(type, "envvar"))
2474 proxytype = PURPLE_PROXY_USE_ENVVAR; 2479 proxytype = PURPLE_PROXY_USE_ENVVAR;
2475 else 2480 else
2476 proxytype = -1; 2481 proxytype = -1;
2477 2482