On Thu, Nov 10, 2022 at 02:56:00PM +0000, Klemens Nanni wrote: > No point in using the variable for half of the check. > > OK?
OK bluhm@ > diff --git a/sys/netinet6/nd6.c b/sys/netinet6/nd6.c > index e65eeb0c2ac..d88969be617 100644 > --- a/sys/netinet6/nd6.c > +++ b/sys/netinet6/nd6.c > @@ -1025,24 +1025,24 @@ nd6_ioctl(u_long cmd, caddr_t data, struct ifnet *ifp) > case SIOCGNBRINFO_IN6: > { > struct llinfo_nd6 *ln; > struct in6_addr nb_addr = nbi->addr; /* make local for safety */ > time_t expire; > > NET_LOCK_SHARED(); > /* > * XXX: KAME specific hack for scoped addresses > * XXXX: for other scopes than link-local? > */ > - if (IN6_IS_ADDR_LINKLOCAL(&nbi->addr) || > - IN6_IS_ADDR_MC_LINKLOCAL(&nbi->addr)) { > + if (IN6_IS_ADDR_LINKLOCAL(&nb_addr) || > + IN6_IS_ADDR_MC_LINKLOCAL(&nb_addr)) { > u_int16_t *idp = (u_int16_t *)&nb_addr.s6_addr[2]; > > if (*idp == 0) > *idp = htons(ifp->if_index); > } > > rt = nd6_lookup(&nb_addr, 0, ifp, ifp->if_rdomain); > if (rt == NULL || > (ln = (struct llinfo_nd6 *)rt->rt_llinfo) == NULL) { > rtfree(rt); > NET_UNLOCK_SHARED();