mirror of
https://git.proxmox.com/git/mirror_iproute2
synced 2025-10-05 01:50:38 +00:00
ss: enclose IPv6 address in brackets
Based on patch by Lehner Florian <dev@der-flo.net> Adds support for RFC2732 IPv6 address format with brackets. Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
This commit is contained in:
parent
b6432e68ac
commit
aba9c23a6e
25
misc/ss.c
25
misc/ss.c
@ -1059,12 +1059,25 @@ static void inet_addr_print(const inet_prefix *a, int port, unsigned int ifindex
|
||||
ap = format_host(AF_INET, 4, a->data);
|
||||
}
|
||||
} else {
|
||||
ap = format_host(a->family, 16, a->data);
|
||||
est_len = strlen(ap);
|
||||
if (est_len <= addr_width)
|
||||
est_len = addr_width;
|
||||
else
|
||||
est_len = addr_width + ((est_len-addr_width+3)/4)*4;
|
||||
if (!memcmp(a->data, &in6addr_any, sizeof(in6addr_any))) {
|
||||
buf[0] = '*';
|
||||
buf[1] = 0;
|
||||
} else {
|
||||
ap = format_host(a->family, 16, a->data);
|
||||
|
||||
/* Numeric IPv6 addresses should be bracketed */
|
||||
if (strchr(ap, ':')) {
|
||||
snprintf(buf, sizeof(buf),
|
||||
"[%s]", ap);
|
||||
ap = buf;
|
||||
}
|
||||
|
||||
est_len = strlen(ap);
|
||||
if (est_len <= addr_width)
|
||||
est_len = addr_width;
|
||||
else
|
||||
est_len = addr_width + ((est_len-addr_width+3)/4)*4;
|
||||
}
|
||||
}
|
||||
|
||||
if (ifindex) {
|
||||
|
Loading…
Reference in New Issue
Block a user