diff options
| author | Hajimu UMEMOTO <ume@FreeBSD.org> | 2001-08-03 19:10:31 +0000 |
|---|---|---|
| committer | Hajimu UMEMOTO <ume@FreeBSD.org> | 2001-08-03 19:10:31 +0000 |
| commit | 2a21da302215feb6cf98ccdecb4f273b2cdd1019 (patch) | |
| tree | f06e18c0fbb148c49da7bdaccba295de4240854d /sys | |
| parent | fd6aaf7fe1f443068ed1d8a87bb2fa87fc764e8a (diff) | |
Notes
Diffstat (limited to 'sys')
| -rw-r--r-- | sys/netinet6/in6.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/sys/netinet6/in6.c b/sys/netinet6/in6.c index 9a5b4046653c8..529d122369a2f 100644 --- a/sys/netinet6/in6.c +++ b/sys/netinet6/in6.c @@ -1087,16 +1087,18 @@ in6_update_ifa(ifp, ifra, ia) * some interface-boundary restriction. */ if (ifp->if_flags & IFF_LOOPBACK) { + struct in6_ifaddr *ia_loop; + struct in6_addr loop6 = in6addr_loopback; - ia = in6ifa_ifpwithaddr(ifp, &loop6); + ia_loop = in6ifa_ifpwithaddr(ifp, &loop6); mltaddr.sin6_addr = in6addr_nodelocal_allnodes; IN6_LOOKUP_MULTI(mltaddr.sin6_addr, ifp, in6m); - if (in6m == NULL && ia != NULL) { + if (in6m == NULL && ia_loop != NULL) { rtrequest(RTM_ADD, (struct sockaddr *)&mltaddr, - (struct sockaddr *)&ia->ia_addr, + (struct sockaddr *)&ia_loop->ia_addr, (struct sockaddr *)&mltmask, RTF_UP, (struct rtentry **)0); |
