X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=blobdiff_plain;f=proxy.c;h=c6008a59d095c4336594352d51cf76848597ad40;hb=12e019bafc75cb441e965c63e15dfceeaf71ca1e;hp=5baab7a8ed86d42bbd577564a39a2050ee7ec538;hpb=eb0583762cc63a40241999b639a2d700d197ee54;p=PuTTY.git diff --git a/proxy.c b/proxy.c index 5baab7a8..c6008a59 100644 --- a/proxy.c +++ b/proxy.c @@ -16,9 +16,7 @@ #define do_proxy_dns(cfg) \ (cfg->proxy_dns == FORCE_ON || \ - (cfg->proxy_dns == AUTO && \ - cfg->proxy_type != PROXY_SOCKS4 && \ - cfg->proxy_type != PROXY_SOCKS5)) + (cfg->proxy_dns == AUTO && cfg->proxy_type != PROXY_SOCKS4)) /* * Call this when proxy negotiation is complete, so that this @@ -191,6 +189,15 @@ static const char * sk_proxy_socket_error (Socket s) /* basic proxy plug functions */ +static void plug_proxy_log(Plug plug, int type, SockAddr addr, int port, + const char *error_msg, int error_code) +{ + Proxy_Plug pp = (Proxy_Plug) plug; + Proxy_Socket ps = pp->proxy_socket; + + plug_log(ps->plug, type, addr, port, error_msg, error_code); +} + static int plug_proxy_closing (Plug p, const char *error_msg, int error_code, int calling_back) { @@ -372,6 +379,7 @@ Socket new_connection(SockAddr addr, char *hostname, }; static const struct plug_function_table plug_fn_table = { + plug_proxy_log, plug_proxy_closing, plug_proxy_receive, plug_proxy_sent, @@ -1361,7 +1369,7 @@ char *format_telnet_command(SockAddr addr, int port, const Config *cfg) eo += 4; } else if (strnicmp(cfg->proxy_telnet_command + eo, - "proxyhost", 4) == 0) { + "proxyhost", 9) == 0) { int phlen = strlen(cfg->proxy_host); ENSURE(phlen); memcpy(ret+retlen, cfg->proxy_host, phlen); @@ -1369,11 +1377,11 @@ char *format_telnet_command(SockAddr addr, int port, const Config *cfg) eo += 9; } else if (strnicmp(cfg->proxy_telnet_command + eo, - "proxyport", 4) == 0) { + "proxyport", 9) == 0) { char pport[50]; int pplen; sprintf(pport, "%d", cfg->proxy_port); - pplen = strlen(cfg->proxy_host); + pplen = strlen(pport); ENSURE(pplen); memcpy(ret+retlen, pport, pplen); retlen += pplen;