summaryrefslogtreecommitdiff
path: root/lib/zclient.c
diff options
context:
space:
mode:
authorRenato Westphal <renato@opensourcerouting.org>2019-01-18 16:06:00 -0200
committerRenato Westphal <renato@opensourcerouting.org>2019-01-18 16:06:00 -0200
commitd763789879c109b03d6aaa7c43eadd7f5fce4d4e (patch)
tree10d728a48b1a6f08d708e6ebf23c9f9ef7ffc006 /lib/zclient.c
parentf20b478ef3d25e153939516a473bb2e80603cbd5 (diff)
lib: fix checking of clients subscribed to receive default routes
In these two functions, we were using VRF_DEFAULT instead of the VRF ID passed as a parameter when checking if the given client subscribed to receive default routes or not. This prevented the "default-originate" command from ospfd/isisd from working correctly under specific circumstances. Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
Diffstat (limited to 'lib/zclient.c')
-rw-r--r--lib/zclient.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/lib/zclient.c b/lib/zclient.c
index cc936d47d7..367a21f7d0 100644
--- a/lib/zclient.c
+++ b/lib/zclient.c
@@ -457,8 +457,7 @@ void zclient_send_reg_requests(struct zclient *zclient, vrf_id_t vrf_id)
vrf_id);
/* If default information is needed. */
- if (vrf_bitmap_check(zclient->default_information[afi],
- VRF_DEFAULT))
+ if (vrf_bitmap_check(zclient->default_information[afi], vrf_id))
zebra_redistribute_default_send(
ZEBRA_REDISTRIBUTE_DEFAULT_ADD, zclient, afi,
vrf_id);
@@ -525,8 +524,7 @@ void zclient_send_dereg_requests(struct zclient *zclient, vrf_id_t vrf_id)
i, 0, vrf_id);
/* If default information is needed. */
- if (vrf_bitmap_check(zclient->default_information[afi],
- VRF_DEFAULT))
+ if (vrf_bitmap_check(zclient->default_information[afi], vrf_id))
zebra_redistribute_default_send(
ZEBRA_REDISTRIBUTE_DEFAULT_DELETE, zclient, afi,
vrf_id);