X-Git-Url: https://git.distorted.org.uk/u/mdw/putty/blobdiff_plain/c4190b30d5c70af4aa1d3b57514047ea425bbcc4..4c26bb506b3c12443171551b103a81b038d25334:/proxy.c 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;