0
0
mirror of https://gitlab.nic.cz/labs/bird.git synced 2025-01-03 07:31:54 +00:00

Merge commit '32425297' into thread-next

This commit is contained in:
Maria Matejka 2022-11-07 10:25:52 +01:00
commit 40bae8e1b7

View File

@ -921,11 +921,11 @@ nl_parse_multipath(struct nl_parse_state *s, struct krt_proto *p, const net_addr
rv->gw = rta_get_via(a[RTA_VIA]); rv->gw = rta_get_via(a[RTA_VIA]);
#endif #endif
if (nh->rtnh_flags & RTNH_F_ONLINK)
rv->flags |= RNF_ONLINK;
if (ipa_nonzero(rv->gw)) if (ipa_nonzero(rv->gw))
{ {
if (nh->rtnh_flags & RTNH_F_ONLINK)
rv->flags |= RNF_ONLINK;
neighbor *nbr; neighbor *nbr;
nbr = neigh_find(&p->p, rv->gw, rv->iface, nbr = neigh_find(&p->p, rv->gw, rv->iface,
(rv->flags & RNF_ONLINK) ? NEF_ONLINK : 0); (rv->flags & RNF_ONLINK) ? NEF_ONLINK : 0);
@ -1812,6 +1812,9 @@ nl_parse_route(struct nl_parse_state *s, struct nlmsghdr *h)
nhad.nh.gw = rta_get_via(a[RTA_VIA]); nhad.nh.gw = rta_get_via(a[RTA_VIA]);
#endif #endif
if (i->rtm_flags & RTNH_F_ONLINK)
nhad.nh.flags |= RNF_ONLINK;
if (ipa_nonzero(nhad.nh.gw)) if (ipa_nonzero(nhad.nh.gw))
{ {
/* Silently skip strange 6to4 routes */ /* Silently skip strange 6to4 routes */
@ -1819,9 +1822,6 @@ nl_parse_route(struct nl_parse_state *s, struct nlmsghdr *h)
if ((i->rtm_family == AF_INET6) && ipa_in_netX(nhad.nh.gw, (net_addr *) &sit)) if ((i->rtm_family == AF_INET6) && ipa_in_netX(nhad.nh.gw, (net_addr *) &sit))
return; return;
if (i->rtm_flags & RTNH_F_ONLINK)
nhad.nh.flags |= RNF_ONLINK;
neighbor *nbr; neighbor *nbr;
nbr = neigh_find(&p->p, nhad.nh.gw, nhad.nh.iface, nbr = neigh_find(&p->p, nhad.nh.gw, nhad.nh.iface,
(nhad.nh.flags & RNF_ONLINK) ? NEF_ONLINK : 0); (nhad.nh.flags & RNF_ONLINK) ? NEF_ONLINK : 0);