summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Walton <dwalton76@gmail.com>2014-09-30 15:57:37 -0700
committerTimo Teräs <timo.teras@iki.fi>2015-06-04 11:30:34 +0300
commit7e3a435bd9936e930e584ca8aa854001eddbfa89 (patch)
tree619b4c0976e7422cc5b58af200ea0a7479012101
parent4bd168929cf25d2c71c244deeebfc85991ce8990 (diff)
downloadquagga-7e3a435bd9936e930e584ca8aa854001eddbfa89.tar.bz2
quagga-7e3a435bd9936e930e584ca8aa854001eddbfa89.tar.xz
A valid BGP nexthop is flagged as invalid
Signed-off-by: Daniel Walton <dwalton@cumulusnetworks.com>
-rw-r--r--zebra/zebra_rnh.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/zebra/zebra_rnh.c b/zebra/zebra_rnh.c
index 6d71e990..a4094360 100644
--- a/zebra/zebra_rnh.c
+++ b/zebra/zebra_rnh.c
@@ -540,7 +540,8 @@ send_client (struct rnh *rnh, struct zserv *client)
nump = stream_get_endp(s);
stream_putc (s, 0);
for (nexthop = rib->nexthop; nexthop; nexthop = nexthop->next)
- if (CHECK_FLAG (nexthop->flags, NEXTHOP_FLAG_FIB) &&
+ if ((CHECK_FLAG (nexthop->flags, NEXTHOP_FLAG_FIB) ||
+ CHECK_FLAG (nexthop->flags, NEXTHOP_FLAG_RECURSIVE)) &&
CHECK_FLAG (nexthop->flags, NEXTHOP_FLAG_ACTIVE))
{
stream_putc (s, nexthop->type);