From cceb58d23343345cb07850143e98f64ada4e53f7 Mon Sep 17 00:00:00 2001 From: Yossi Gottlieb Date: Thu, 18 Sep 2014 17:07:29 +0300 Subject: [PATCH] Unix domain sockets incorrectly listed as IPv6. --- src/anet.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/anet.c b/src/anet.c index 76915326..50b6e317 100644 --- a/src/anet.c +++ b/src/anet.c @@ -539,10 +539,13 @@ int anetPeerToString(int fd, char *ip, size_t ip_len, int *port) { struct sockaddr_in *s = (struct sockaddr_in *)&sa; if (ip) inet_ntop(AF_INET,(void*)&(s->sin_addr),ip,ip_len); if (port) *port = ntohs(s->sin_port); - } else { + } else if (sa.ss_family == AF_INET6) { struct sockaddr_in6 *s = (struct sockaddr_in6 *)&sa; if (ip) inet_ntop(AF_INET6,(void*)&(s->sin6_addr),ip,ip_len); if (port) *port = ntohs(s->sin6_port); + } else { + if (ip) ip[0] = '\0'; + if (port) *port = 0; } return 0; }