summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/print.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/print.c b/lib/print.c
index 7ec786f..b045d17 100644
--- a/lib/print.c
+++ b/lib/print.c
@@ -158,7 +158,8 @@ __getnameinfo##f(char *buf, unsigned int len, \
sizeof(saddr), \
buf, len, NULL, 0, flags); \
\
- if (err == EAI_AGAIN && !(flags & NI_NUMERICHOST)) \
+ if (!(flags & NI_NUMERICHOST) && \
+ (err == EAI_AGAIN || (err == 0 && strchr(buf, '-') != NULL))) \
err = getnameinfo((const struct sockaddr *)&saddr, \
sizeof(saddr), \
buf, len, NULL, 0, \