On 2022-11-15 19:21 +01, Claudio Jeker <cje...@diehard.n-r-g.com> wrote: > My last commit to in6_ifattach() broke a few regress tests. > The problem is that 'ifconfig tun0 inet6 eui64' no longer works. > Now I thought it would if called explicitly but no. > So lets peddal back a bit and assign link-local addresses on all interface > but wg(4). For mpe(4) this does not really matter and it does help other > point-to-point interfaces where the system somewhat expects a link-local > addr to be present. > > With this all regress tests pass again. > -- > :wq Claudio > > Index: netinet6/in6_ifattach.c > =================================================================== > RCS file: /cvs/src/sys/netinet6/in6_ifattach.c,v > retrieving revision 1.120 > diff -u -p -r1.120 in6_ifattach.c > --- netinet6/in6_ifattach.c 14 Nov 2022 17:12:55 -0000 1.120 > +++ netinet6/in6_ifattach.c 15 Nov 2022 18:14:10 -0000 > @@ -389,12 +389,11 @@ in6_ifattach(struct ifnet *ifp) > return (error); > } > > - /* > - * Only interfaces that need the ND cache should automatically > - * assign a link local address. > - */ > - if (!nd6_need_cache(ifp)) > + /* For wg(4) skip assignment of link local address. */
That comment is not helpful, it just restates what the code does. The gibberish we had before was also not helpful. Maybe just drop the comment? Either way, OK > + switch (ifp->if_type) { > + case IFT_WIREGUARD: > return (0); > + } > > /* Assign a link-local address, if there's none. */ > if (in6ifa_ifpforlinklocal(ifp, 0) == NULL) { > -- I'm not entirely sure you are real.