On Fri, Jun 24, 2022 at 12:22:55PM +0200, Claudio Jeker wrote: > It seems that IN6_IS_ADDR_MC_INTFACELOCAL() is actually spelled > IN6_IS_ADDR_MC_NODELOCAL(). So better use that for portability.
codesearch appears to agree. ok > > -- > :wq Claudio > > Index: kroute.c > =================================================================== > RCS file: /cvs/src/usr.sbin/bgpd/kroute.c,v > retrieving revision 1.268 > diff -u -p -r1.268 kroute.c > --- kroute.c 23 Jun 2022 13:09:03 -0000 1.268 > +++ kroute.c 24 Jun 2022 10:07:42 -0000 > @@ -1626,13 +1626,13 @@ kr6_tofull(struct kroute6 *kr6) > /* only set scope_id for link-local addresses because IPv6 */ > if (IN6_IS_ADDR_LINKLOCAL(&kr6->prefix) || > IN6_IS_ADDR_MC_LINKLOCAL(&kr6->prefix) || > - IN6_IS_ADDR_MC_INTFACELOCAL(&kr6->prefix)) > + IN6_IS_ADDR_MC_NODELOCAL(&kr6->prefix)) > kf.prefix.scope_id = kr6->ifindex; > kf.nexthop.aid = AID_INET6; > memcpy(&kf.nexthop.v6, &kr6->nexthop, sizeof(struct in6_addr)); > if (IN6_IS_ADDR_LINKLOCAL(&kr6->nexthop) || > IN6_IS_ADDR_MC_LINKLOCAL(&kr6->nexthop) || > - IN6_IS_ADDR_MC_INTFACELOCAL(&kr6->nexthop)) > + IN6_IS_ADDR_MC_NODELOCAL(&kr6->nexthop)) > kf.nexthop.scope_id = kr6->ifindex; > strlcpy(kf.label, rtlabel_id2name(kr6->labelid), sizeof(kf.label)); > kf.flags = kr6->flags; > Index: util.c > =================================================================== > RCS file: /cvs/src/usr.sbin/bgpd/util.c,v > retrieving revision 1.67 > diff -u -p -r1.67 util.c > --- util.c 22 Jun 2022 14:49:02 -0000 1.67 > +++ util.c 24 Jun 2022 10:08:10 -0000 > @@ -68,7 +68,7 @@ log_in6addr(const struct in6_addr *addr) > /* XXX thanks, KAME, for this ugliness... adopted from route/show.c */ > if ((IN6_IS_ADDR_LINKLOCAL(&sa_in6.sin6_addr) || > IN6_IS_ADDR_MC_LINKLOCAL(&sa_in6.sin6_addr) || > - IN6_IS_ADDR_MC_INTFACELOCAL(&sa_in6.sin6_addr)) && > + IN6_IS_ADDR_MC_NODELOCAL(&sa_in6.sin6_addr)) && > sa_in6.sin6_scope_id == 0) { > uint16_t tmp16; > memcpy(&tmp16, &sa_in6.sin6_addr.s6_addr[2], sizeof(tmp16)); > @@ -922,7 +922,7 @@ sa2addr(struct sockaddr *sa, struct bgpd > */ > if ((IN6_IS_ADDR_LINKLOCAL(&sa_in6->sin6_addr) || > IN6_IS_ADDR_MC_LINKLOCAL(&sa_in6->sin6_addr) || > - IN6_IS_ADDR_MC_INTFACELOCAL(&sa_in6->sin6_addr)) && > + IN6_IS_ADDR_MC_NODELOCAL(&sa_in6->sin6_addr)) && > sa_in6->sin6_scope_id == 0) { > uint16_t tmp16; > memcpy(&tmp16, &sa_in6->sin6_addr.s6_addr[2], >