summaryrefslogtreecommitdiffstats
path: root/zebra
diff options
context:
space:
mode:
authorRuss White <russ@riw.us>2022-04-18 15:47:47 +0200
committerGitHub <noreply@github.com>2022-04-18 15:47:47 +0200
commit1258cfcd8c1ac619c9ea61908d608685625bf1bd (patch)
tree00722268b187ea8665a58a4398c29b069914b21c /zebra
parentMerge pull request #11028 from ton31337/fix/pass_non_transitive_communities_v... (diff)
parenttests: Add a test case for a kernel route depending on a kernel route (diff)
downloadfrr-1258cfcd8c1ac619c9ea61908d608685625bf1bd.tar.xz
frr-1258cfcd8c1ac619c9ea61908d608685625bf1bd.zip
Merge pull request #11001 from donaldsharp/system_route_recursion
zebra: Allow system routes to recurse through themselves
Diffstat (limited to 'zebra')
-rw-r--r--zebra/zebra_nhg.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/zebra/zebra_nhg.c b/zebra/zebra_nhg.c
index 02894632e..d1a34d096 100644
--- a/zebra/zebra_nhg.c
+++ b/zebra/zebra_nhg.c
@@ -2265,7 +2265,8 @@ static int nexthop_active(struct nexthop *nexthop, struct nhg_hash_entry *nhe,
continue;
}
- if (match->type == ZEBRA_ROUTE_CONNECT) {
+ if ((match->type == ZEBRA_ROUTE_CONNECT) ||
+ (RIB_SYSTEM_ROUTE(match) && RSYSTEM_ROUTE(type))) {
match = zebra_nhg_connected_ifindex(rn, match,
nexthop->ifindex);