summaryrefslogtreecommitdiffstats
path: root/term-utils/agetty.c
diff options
context:
space:
mode:
Diffstat (limited to 'term-utils/agetty.c')
-rw-r--r--term-utils/agetty.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/term-utils/agetty.c b/term-utils/agetty.c
index 3c6307a21..7ac12f201 100644
--- a/term-utils/agetty.c
+++ b/term-utils/agetty.c
@@ -1781,7 +1781,6 @@ static void output_ip(sa_family_t family)
if (host && getaddrinfo(host, NULL, &hints, &info) == 0 && info) {
void *addr = NULL;
- char buff[INET6_ADDRSTRLEN + 1];
switch (info->ai_family) {
case AF_INET:
@@ -1791,8 +1790,12 @@ static void output_ip(sa_family_t family)
addr = &((struct sockaddr_in6 *) info->ai_addr)->sin6_addr;
break;
}
- inet_ntop(info->ai_family, (void *) addr, buff, sizeof(buff));
- printf("%s", buff);
+ if (addr) {
+ char buff[INET6_ADDRSTRLEN + 1];
+
+ inet_ntop(info->ai_family, (void *) addr, buff, sizeof(buff));
+ printf("%s", buff);
+ }
freeaddrinfo(info);
}