From 73bbc449db3739d48b4a91cb31d91cc44e87e05d Mon Sep 17 00:00:00 2001 From: Hajimu UMEMOTO Date: Thu, 16 Jun 2005 19:37:09 +0000 Subject: [PATCH] only show a tunnel information of an adequate address family. Approved by: re (dwhite) --- sbin/ifconfig/af_inet.c | 4 ++++ sbin/ifconfig/af_inet6.c | 10 ++++++---- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/sbin/ifconfig/af_inet.c b/sbin/ifconfig/af_inet.c index 4a8e3a1ae53..7678daa1aa9 100644 --- a/sbin/ifconfig/af_inet.c +++ b/sbin/ifconfig/af_inet.c @@ -153,11 +153,15 @@ in_status_tunnel(int s) if (ioctl(s, SIOCGIFPSRCADDR, (caddr_t)&ifr) < 0) return; + if (sa->sa_family != AF_INET) + return; if (getnameinfo(sa, sa->sa_len, src, sizeof(src), 0, 0, NI_NUMERICHOST) != 0) src[0] = '\0'; if (ioctl(s, SIOCGIFPDSTADDR, (caddr_t)&ifr) < 0) return; + if (sa->sa_family != AF_INET) + return; if (getnameinfo(sa, sa->sa_len, dst, sizeof(dst), 0, 0, NI_NUMERICHOST) != 0) dst[0] = '\0'; diff --git a/sbin/ifconfig/af_inet6.c b/sbin/ifconfig/af_inet6.c index 6112f2bd446..2aae3822523 100644 --- a/sbin/ifconfig/af_inet6.c +++ b/sbin/ifconfig/af_inet6.c @@ -456,16 +456,18 @@ in6_status_tunnel(int s) if (ioctl(s, SIOCGIFPSRCADDR_IN6, (caddr_t)&in6_ifr) < 0) return; - if (sa->sa_family == AF_INET6) - in6_fillscopeid(&in6_ifr.ifr_addr); + if (sa->sa_family != AF_INET6) + return; + in6_fillscopeid(&in6_ifr.ifr_addr); if (getnameinfo(sa, sa->sa_len, src, sizeof(src), 0, 0, NI_NUMERICHOST) != 0) src[0] = '\0'; if (ioctl(s, SIOCGIFPDSTADDR_IN6, (caddr_t)&in6_ifr) < 0) return; - if (sa->sa_family == AF_INET6) - in6_fillscopeid(&in6_ifr.ifr_addr); + if (sa->sa_family != AF_INET6) + return; + in6_fillscopeid(&in6_ifr.ifr_addr); if (getnameinfo(sa, sa->sa_len, dst, sizeof(dst), 0, 0, NI_NUMERICHOST) != 0) dst[0] = '\0';