]> granicus.if.org Git - curl/commitdiff
updateconninfo: clear destination struct before getsockname()
authorDaniel Stenberg <daniel@haxx.se>
Thu, 4 Dec 2014 01:46:15 +0000 (02:46 +0100)
committerDaniel Stenberg <daniel@haxx.se>
Thu, 4 Dec 2014 01:52:19 +0000 (02:52 +0100)
Otherwise we may read uninitialized bytes later in the unix-domain
sockets case.

lib/connect.c

index 25d2103f4ae0a1f3e12a7fbb4f4e631d96bd2dcc..b3a96ce83c9f470702653f0c1222c3357efb9ab5 100644 (file)
@@ -679,6 +679,7 @@ void Curl_updateconninfo(struct connectdata *conn, curl_socket_t sockfd)
     }
 
     len = sizeof(struct Curl_sockaddr_storage);
+    memset(&ssloc, 0, sizeof(ssloc));
     if(getsockname(sockfd, (struct sockaddr*) &ssloc, &len)) {
       error = SOCKERRNO;
       failf(data, "getsockname() failed with errno %d: %s",