Rename crc32() to crc32_compute(), to avoid clashing catastrophically
[u/mdw/putty] / proxy.c
diff --git a/proxy.c b/proxy.c
index 59f2abb..2c0554a 100644 (file)
--- a/proxy.c
+++ b/proxy.c
@@ -16,7 +16,9 @@
 
 #define do_proxy_dns(cfg) \
     (cfg->proxy_dns == FORCE_ON || \
-        (cfg->proxy_dns == AUTO && cfg->proxy_type != PROXY_SOCKS))
+        (cfg->proxy_dns == AUTO && \
+              cfg->proxy_type != PROXY_SOCKS4 && \
+              cfg->proxy_type != PROXY_SOCKS5))
 
 /*
  * Call this when proxy negotiation is complete, so that this
@@ -232,7 +234,7 @@ static void plug_proxy_sent (Plug p, int bufsize)
     plug_sent(ps->plug, bufsize);
 }
 
-static int plug_proxy_accepting (Plug p, void *sock)
+static int plug_proxy_accepting (Plug p, OSSocket sock)
 {
     Proxy_Plug pp = (Proxy_Plug) p;
     Proxy_Socket ps = pp->proxy_socket;
@@ -385,8 +387,9 @@ Socket new_connection(SockAddr addr, char *hostname,
        char *proxy_canonical_name;
        Socket sret;
 
-       if ( (sret = platform_new_connection(addr, hostname, port, privport,
-                                            oobinline, nodelay, plug, cfg)) )
+       if ((sret = platform_new_connection(addr, hostname, port, privport,
+                                           oobinline, nodelay, plug, cfg)) !=
+           NULL)
            return sret;
 
        ret = snew(struct Socket_proxy_tag);
@@ -410,11 +413,10 @@ Socket new_connection(SockAddr addr, char *hostname,
        
        if (cfg->proxy_type == PROXY_HTTP) {
            ret->negotiate = proxy_http_negotiate;
-       } else if (cfg->proxy_type == PROXY_SOCKS) {
-           if (cfg->proxy_socks_version == 4)
-               ret->negotiate = proxy_socks4_negotiate;
-           else
-               ret->negotiate = proxy_socks5_negotiate;
+       } else if (cfg->proxy_type == PROXY_SOCKS4) {
+            ret->negotiate = proxy_socks4_negotiate;
+       } else if (cfg->proxy_type == PROXY_SOCKS5) {
+            ret->negotiate = proxy_socks5_negotiate;
        } else if (cfg->proxy_type == PROXY_TELNET) {
            ret->negotiate = proxy_telnet_negotiate;
        } else {