about summary refs log tree commit diff
path: root/nss
diff options
context:
space:
mode:
Diffstat (limited to 'nss')
-rw-r--r--nss/getent.c4
1 files changed, 3 insertions, 1 deletions
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 ?: "");