diff options
| author | Max Khon <fjoe@FreeBSD.org> | 2003-01-22 00:14:34 +0000 |
|---|---|---|
| committer | Max Khon <fjoe@FreeBSD.org> | 2003-01-22 00:14:34 +0000 |
| commit | b8701b5430193f39ef0f7c73b98d39da21f63faa (patch) | |
| tree | 6c545fd39ef4a25b1f1748e520361fa818df7f33 /sbin | |
| parent | afa79409eeb079e6d3129b87fcd93ba8af7b1fc2 (diff) | |
Notes
Diffstat (limited to 'sbin')
| -rw-r--r-- | sbin/ifconfig/ifconfig.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/sbin/ifconfig/ifconfig.c b/sbin/ifconfig/ifconfig.c index 985cbac56542..a3919c015533 100644 --- a/sbin/ifconfig/ifconfig.c +++ b/sbin/ifconfig/ifconfig.c @@ -1496,16 +1496,18 @@ xns_status(int s __unused, struct rt_addrinfo * info) void link_status(int s __unused, struct rt_addrinfo *info) { - int n; struct sockaddr_dl *sdl = (struct sockaddr_dl *)info; - if ((n = sdl->sdl_alen) > 0) { + if (sdl->sdl_alen > 0) { if (sdl->sdl_type == IFT_ETHER && sdl->sdl_alen == ETHER_ADDR_LEN) printf("\tether %s\n", ether_ntoa((struct ether_addr *)LLADDR(sdl))); - else - printf("\tlladdr %s\n", link_ntoa(sdl) + n + 1); + else { + int n = sdl->sdl_nlen > 0 ? sdl->sdl_nlen + 1 : 0; + + printf("\tlladdr %s\n", link_ntoa(sdl) + n); + } } } |
