On 28/04/14(Mon) 21:51, Stuart Henderson wrote: > On 2014/04/28 19:09, Martin Pieuchot wrote: > > On 28/04/14(Mon) 17:53, Stuart Henderson wrote: > > > On 2014/04/28 18:39, Martin Pieuchot wrote: > > > > On 28/04/14(Mon) 17:32, Stuart Henderson wrote: > > > > > On 2014/04/28 17:15, Stuart Henderson wrote: > > > > > > This breaks my setup, > > > > > > > > > > > > # /sbin/route add -inet6 default -ifp pppoe1 fe80:: > > > > > > route: writing to routing socket: Network is unreachable > > > > > > add net default: gateway fe80::: Network is unreachable > > > > > > > > > > > > > > > > hmmm... actually it seems something that was committed broke this; > > > > > any suggestions of likely candidates? > > > > > > > > Concerning routing & inet6 that might be the rt_ifa_add_loop() committed > > > > on the 3rd of April, but you tested and ok'd it or the rtinit() -> > > > > rt_ifa_add() conversion committed the 10th of April. > > > > > > Window narrowed to between these: > > > > > > OpenBSD 5.5-current (GENERIC.MP) #61: Tue Apr 8 17:28:01 MDT 2014 > > > OpenBSD 5.5-current (GENERIC.MP) #63: Thu Apr 10 20:45:05 MDT 2014 > > > > > > Could it be in6.c 1.135? (I need to stop breaking my net for a bit to > > > get some other things done..) > > > > I doubt it will be this one since it's just removing a wrapper, but I > > don't see anything else in this timeframe. > > > > This is the one that breaks it, I can't just pull this diff out > though, other things are stacked on top.
Thanks for finding it, I'll cook a fix then. > > --------------------- > PatchSet 3605 > Date: 2014/04/10 14:55:55 > Author: mpi > Branch: HEAD > Tag: (none) > Log: > Don't use ifa_ifwithnet() with obvious sockaddr_dl argument. This > function should not deal with link-layer addresses and here there's > no reason to do it. > > ok mikeb@ > > Members: > route.c:1.159->1.160 > > Index: src/sys/net/route.c > diff -u src/sys/net/route.c:1.159 src/sys/net/route.c:1.160 > --- src/sys/net/route.c:1.159 Thu Apr 10 13:47:21 2014 > +++ src/sys/net/route.c Thu Apr 10 13:55:55 2014 > @@ -1,4 +1,4 @@ > -/* $OpenBSD: route.c,v 1.159 2014/04/10 13:47:21 mpi Exp $ */ > +/* $OpenBSD: route.c,v 1.160 2014/04/10 13:55:55 mpi Exp $ */ > /* $NetBSD: route.c,v 1.14 1996/02/13 22:00:46 christos Exp $ */ > > /* > @@ -683,11 +683,12 @@ > * ifp may be specified by sockaddr_dl when protocol address > * is ambiguous > */ > - if (info->rti_ifp == NULL && info->rti_info[RTAX_IFP] != NULL > - && info->rti_info[RTAX_IFP]->sa_family == AF_LINK && > - (ifa = ifa_ifwithnet((struct sockaddr *)info->rti_info[RTAX_IFP], > - rtid)) != NULL) > - info->rti_ifp = ifa->ifa_ifp; > + if (info->rti_ifp == NULL && info->rti_info[RTAX_IFP] != NULL) { > + struct sockaddr_dl *sdl; > + > + sdl = (struct sockaddr_dl *)info->rti_info[RTAX_IFP]; > + info->rti_ifp = if_get(sdl->sdl_index); > + } > > if (info->rti_ifa == NULL && info->rti_info[RTAX_IFA] != NULL) > info->rti_ifa = ifa_ifwithaddr(info->rti_info[RTAX_IFA], rtid); >