aboutsummaryrefslogtreecommitdiff
path: root/nss
diff options
context:
space:
mode:
Diffstat (limited to 'nss')
-rw-r--r--nss/getent.c27
1 files changed, 15 insertions, 12 deletions
diff --git a/nss/getent.c b/nss/getent.c
index 168d6853a1..a9cba96f0c 100644
--- a/nss/getent.c
+++ b/nss/getent.c
@@ -232,21 +232,24 @@ group_keys (int number, char *key[])
static inline void
print_hosts (struct hostent *host)
{
- unsigned int i;
- char buf[INET6_ADDRSTRLEN];
- const char *ip = inet_ntop (host->h_addrtype, host->h_addr_list[0],
- buf, sizeof (buf));
-
- printf ("%-15s %s", ip, host->h_name);
+ unsigned int cnt;
- i = 0;
- while (host->h_aliases[i] != NULL)
+ for (cnt = 0; host->h_addr_list[cnt] != NULL; ++cnt)
{
- putchar_unlocked (' ');
- fputs_unlocked (host->h_aliases[i], stdout);
- ++i;
+ char buf[INET6_ADDRSTRLEN];
+ const char *ip = inet_ntop (host->h_addrtype, host->h_addr_list[cnt],
+ buf, sizeof (buf));
+
+ printf ("%-15s %s", ip, host->h_name);
+
+ unsigned int i;
+ for (i = 0; host->h_aliases[i] != NULL; ++i)
+ {
+ putchar_unlocked (' ');
+ fputs_unlocked (host->h_aliases[i], stdout);
+ }
+ putchar_unlocked ('\n');
}
- putchar_unlocked ('\n');
}
static int