diff options
-rw-r--r-- | ChangeLog | 2 | ||||
-rw-r--r-- | nss/getent.c | 4 |
2 files changed, 5 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog index ac3c7e24a5..2ef78544bc 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,7 @@ 2004-08-15 Ulrich Drepper <drepper@redhat.com> + * nss/getent.c (ahosts_keys_int): Correctly print IPv6 addresses. + * nss/getent.c: Allow queries for getaddrinfo with AF_INET and AF_INET6. diff --git a/nss/getent.c b/nss/getent.c index 0f93e5121c..45a6a1ffe5 100644 --- a/nss/getent.c +++ b/nss/getent.c @@ -345,7 +345,9 @@ ahosts_keys_int (int af, int xflags, int number, char *key[]) char buf[INET6_ADDRSTRLEN]; printf ("%-15s %-6s %s\n", inet_ntop (runp->ai_family, - &((struct sockaddr_in *) runp->ai_addr)->sin_addr, + runp->ai_family == AF_INET + ? (void *) &((struct sockaddr_in *) runp->ai_addr)->sin_addr + : (void *) &((struct sockaddr_in6 *) runp->ai_addr)->sin6_addr, buf, sizeof (buf)), sockstr, runp->ai_canonname ?: ""); |