diff --git a/nameserv.c b/nameserv.c index 81d1af2..9f7e648 100644 --- a/nameserv.c +++ b/nameserv.c @@ -130,7 +130,11 @@ int DNS_IPAddress2Name(IPAddr *ip_addr, char *name, int len) { char *result = NULL; - struct sockaddr_in6 in6; +#ifdef FEAT_IPV6 + struct sockaddr_in6 saddr; +#else + struct sockaddr_in saddr; +#endif IPSockAddr ip_saddr; socklen_t slen; char hbuf[NI_MAXHOST]; @@ -138,8 +142,8 @@ DNS_IPAddress2Name(IPAddr *ip_addr, char *name, int len) ip_saddr.ip_addr = *ip_addr; ip_saddr.port = 0; - slen = SCK_IPSockAddrToSockaddr(&ip_saddr, (struct sockaddr *)&in6, sizeof (in6)); - if (!getnameinfo((struct sockaddr *)&in6, slen, hbuf, sizeof (hbuf), NULL, 0, 0)) + slen = SCK_IPSockAddrToSockaddr(&ip_saddr, (struct sockaddr *)&saddr, sizeof (saddr)); + if (!getnameinfo((struct sockaddr *)&saddr, slen, hbuf, sizeof (hbuf), NULL, 0, 0)) result = hbuf; if (result == NULL)