From: Mark Marshall Date: Mon, 19 Mar 2018 09:45:40 +0000 (+0100) Subject: netstat: produce numeric-ip output for non-resolved names X-Git-Tag: 1_29_0~188 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=98592db3231caa905e6d54129c621f3e8e9bbaa3;p=oweals%2Fbusybox.git netstat: produce numeric-ip output for non-resolved names If we don't ask for numerical output, and the symbolic look-up failed we used to get "(null)", but the numeric output would be better. function old new delta ip_port_str 109 121 +12 Signed-off-by: Mark Marshall Signed-off-by: Denys Vlasenko --- diff --git a/networking/netstat.c b/networking/netstat.c index 33281e333..f6bcd44ba 100644 --- a/networking/netstat.c +++ b/networking/netstat.c @@ -397,8 +397,11 @@ static char *ip_port_str(struct sockaddr *addr, int port, const char *proto, int /* Code which used "*" for INADDR_ANY is removed: it's ambiguous * in IPv6, while "0.0.0.0" is not. */ - host = numeric ? xmalloc_sockaddr2dotted_noport(addr) - : xmalloc_sockaddr2host_noport(addr); + host = NULL; + if (!numeric) + host = xmalloc_sockaddr2host_noport(addr); + if (!host) + host = xmalloc_sockaddr2dotted_noport(addr); host_port = xasprintf("%s:%s", host, get_sname(htons(port), proto, numeric)); free(host);