check the arguments to the socks5 function, as the name and password might
authorDaniel Stenberg <daniel@haxx.se>
Fri, 23 Jan 2004 08:29:56 +0000 (08:29 +0000)
committerDaniel Stenberg <daniel@haxx.se>
Fri, 23 Jan 2004 08:29:56 +0000 (08:29 +0000)
be NULL pointers, and if non-NULL if now support zero-length names/passwords

lib/url.c

index e85af3a..d31417b 100644 (file)
--- a/lib/url.c
+++ b/lib/url.c
@@ -1590,7 +1590,7 @@ static int handleSock5Proxy(const char *proxy_name,
   Curl_nonblock(sock, FALSE);
 
   socksreq[0] = 5; /* version */
-  socksreq[1] = (char)(proxy_name[0] ? 2 : 1); /* number of methods (below) */
+  socksreq[1] = (char)(proxy_name ? 2 : 1); /* number of methods (below) */
   socksreq[2] = 0; /* no authentication */
   socksreq[3] = 2; /* username/password */
 
@@ -1620,7 +1620,7 @@ static int handleSock5Proxy(const char *proxy_name,
     int userlen, pwlen, len;
 
     userlen = strlen(proxy_name);
-    pwlen = strlen(proxy_password);
+    pwlen = proxy_password?strlen(proxy_password):0;
 
     /*   username/password request looks like
      * +----+------+----------+------+----------+