From: Donald Sharp Date: Sat, 2 Feb 2019 00:08:16 +0000 (-0500) Subject: zebra: Fix multiple levels of static recursion X-Git-Tag: 7.1_pulled~265^2~1 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=6c47d39902fea25151833f92d44d8e624fbacfeb;p=matthieu%2Ffrr.git zebra: Fix multiple levels of static recursion Allow the nexthop-check code to figure out recursive static routes in a logical manner. Signed-off-by: Donald Sharp --- diff --git a/zebra/zebra_rib.c b/zebra/zebra_rib.c index 73e4b981b5..bccf9b6b14 100644 --- a/zebra/zebra_rib.c +++ b/zebra/zebra_rib.c @@ -608,6 +608,9 @@ static int nexthop_active(afi_t afi, struct route_entry *re, if (!CHECK_FLAG(match->status, ROUTE_ENTRY_INSTALLED)) continue; + if (CHECK_FLAG(newhop->flags, + NEXTHOP_FLAG_RECURSIVE)) + continue; if (set) { SET_FLAG(nexthop->flags,