rv->gw = rta_get_via(a[RTA_VIA]);
#endif
+ if (nh->rtnh_flags & RTNH_F_ONLINK)
+ rv->flags |= RNF_ONLINK;
+
if (ipa_nonzero(rv->gw))
{
- if (nh->rtnh_flags & RTNH_F_ONLINK)
- rv->flags |= RNF_ONLINK;
-
neighbor *nbr;
nbr = neigh_find(&p->p, rv->gw, rv->iface,
(rv->flags & RNF_ONLINK) ? NEF_ONLINK : 0);
ra->nh.gw = rta_get_via(a[RTA_VIA]);
#endif
+ if (i->rtm_flags & RTNH_F_ONLINK)
+ ra->nh.flags |= RNF_ONLINK;
+
if (ipa_nonzero(ra->nh.gw))
{
/* Silently skip strange 6to4 routes */
if ((i->rtm_family == AF_INET6) && ipa_in_netX(ra->nh.gw, (net_addr *) &sit))
return;
- if (i->rtm_flags & RTNH_F_ONLINK)
- ra->nh.flags |= RNF_ONLINK;
-
neighbor *nbr;
nbr = neigh_find(&p->p, ra->nh.gw, ra->nh.iface,
(ra->nh.flags & RNF_ONLINK) ? NEF_ONLINK : 0);