summaryrefslogtreecommitdiffstats
path: root/sbin/ifconfig
diff options
context:
space:
mode:
authorhrs <hrs@FreeBSD.org>2012-12-04 17:12:23 +0000
committerhrs <hrs@FreeBSD.org>2012-12-04 17:12:23 +0000
commitdb5359d69a9ec06842730b8af2a30072a38b5aa1 (patch)
tree0bacd21c19dc243343418c7f98224210dfb97a47 /sbin/ifconfig
parent74acd0aa7d7396577a2cb30cb186ea86e8b8e03d (diff)
downloadFreeBSD-src-db5359d69a9ec06842730b8af2a30072a38b5aa1.zip
FreeBSD-src-db5359d69a9ec06842730b8af2a30072a38b5aa1.tar.gz
- Fix LOR in sa6_recoverscope() in rt_msg2()[1].
- Check V_deembed_scopeid before checking if sa_family == AF_INET6. - Fix scope id handing in route(8)[2] and ifconfig(8). Reported by: rpaulo[1], Mateusz Guzik[1], peter[2]
Diffstat (limited to 'sbin/ifconfig')
-rw-r--r--sbin/ifconfig/af_inet6.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sbin/ifconfig/af_inet6.c b/sbin/ifconfig/af_inet6.c
index a9ad867..5911a94 100644
--- a/sbin/ifconfig/af_inet6.c
+++ b/sbin/ifconfig/af_inet6.c
@@ -251,8 +251,9 @@ in6_status(int s __unused, const struct ifaddrs *ifa)
if ((flags6 & IN6_IFF_TEMPORARY) != 0)
printf("temporary ");
- if (sin->sin6_scope_id)
- printf("scopeid 0x%x ", sin->sin6_scope_id);
+ if (((struct sockaddr_in6 *)(ifa->ifa_addr))->sin6_scope_id)
+ printf("scopeid 0x%x ",
+ ((struct sockaddr_in6 *)(ifa->ifa_addr))->sin6_scope_id);
if (ip6lifetime && (lifetime.ia6t_preferred || lifetime.ia6t_expire)) {
printf("pltime ");
OpenPOWER on IntegriCloud