diff options
| author | Donald Sharp <donaldsharp72@gmail.com> | 2023-10-13 08:53:43 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-10-13 08:53:43 -0400 |
| commit | 4f7dc7709f8cfe596585ea69934be9b232085ae8 (patch) | |
| tree | 49e9a7ed1d89a504436facec21725421dc1750fe /zebra/zebra_rib.c | |
| parent | 0bd4666669dfe3adae21c8b293129ecdded598ed (diff) | |
| parent | a35ba7ba602f87390cc9cbce3f0ceb61977f0949 (diff) | |
Merge pull request #13340 from leonshaw/fix/rib-del-connected
zebra: Fix connected route deletion when multiple entry exists
Diffstat (limited to 'zebra/zebra_rib.c')
| -rw-r--r-- | zebra/zebra_rib.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/zebra/zebra_rib.c b/zebra/zebra_rib.c index c05d69a2dd..6538b5e0d7 100644 --- a/zebra/zebra_rib.c +++ b/zebra/zebra_rib.c @@ -2948,8 +2948,8 @@ static void process_subq_early_route_delete(struct zebra_early_route *ere) struct nexthop *nh = NULL; - if (ere->re->nhe) - nh = ere->re->nhe->nhg.nexthop; + if (ere->re_nhe) + nh = ere->re_nhe->nhg.nexthop; /* Lookup same type route. */ RNODE_FOREACH_RE (rn, re) { @@ -2967,7 +2967,8 @@ static void process_subq_early_route_delete(struct zebra_early_route *ere) if (re->type == ZEBRA_ROUTE_KERNEL && re->metric != ere->re->metric) continue; - if (re->type == ZEBRA_ROUTE_CONNECT && (rtnh = nh) && + if (re->type == ZEBRA_ROUTE_CONNECT && + (rtnh = re->nhe->nhg.nexthop) && rtnh->type == NEXTHOP_TYPE_IFINDEX && nh) { if (rtnh->ifindex != nh->ifindex) continue; |
