summaryrefslogtreecommitdiff
path: root/zebra/zebra_rib.c
diff options
context:
space:
mode:
authorDonald Sharp <donaldsharp72@gmail.com>2023-10-13 11:39:35 -0400
committerGitHub <noreply@github.com>2023-10-13 11:39:35 -0400
commit86c9e501f888dfb48856918001f4de7e7780841b (patch)
treef97cdbcecbc4615f266da6d96ab07ca36f184d78 /zebra/zebra_rib.c
parent178a1cb9823bb2bcaf1a301e5a97304bc314aae4 (diff)
parent0256668a7da0a30ad90a16cdbf6bd35ea0904b63 (diff)
Merge pull request #14587 from FRRouting/mergify/bp/stable/8.4/pr-13340
zebra: Fix connected route deletion when multiple entry exists (backport #13340)
Diffstat (limited to 'zebra/zebra_rib.c')
-rw-r--r--zebra/zebra_rib.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/zebra/zebra_rib.c b/zebra/zebra_rib.c
index 40397e587a..e38ccba516 100644
--- a/zebra/zebra_rib.c
+++ b/zebra/zebra_rib.c
@@ -2849,8 +2849,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) {
@@ -2868,7 +2868,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;