summaryrefslogtreecommitdiff
path: root/eigrpd/eigrp_zebra.c
diff options
context:
space:
mode:
authorRenato Westphal <renato@opensourcerouting.org>2019-01-11 19:20:13 -0200
committerRenato Westphal <renato@opensourcerouting.org>2019-01-14 11:41:33 -0200
commit49db7a7b055d69a8d3892a9171912b8b0f00aa45 (patch)
treecf173e30c23a4a5b682b3c15242e31615a540ec8 /eigrpd/eigrp_zebra.c
parentca88bbed50dfb3390e54791765794f626afcaf4b (diff)
lib, zebra: add AFI parameter to the ZEBRA_REDISTRIBUTE_DEFAULT_* messages
Some daemons like ospfd and isisd have the ability to advertise a default route to their peers only if one exists in the RIB. This is what the "default-information originate" commands do when used without the "always" parameter. For that to work, these daemons use the ZEBRA_REDISTRIBUTE_DEFAULT_ADD message to request default route information to zebra. The problem is that this message didn't have an AFI parameter, so a default route from any address-family would satisfy the requests from both daemons (e.g. ::/0 would trigger ospfd to advertise a default route to its peers, and 0.0.0.0/0 would trigger isisd to advertise a default route to its IPv6 peers). Fix this by adding an AFI parameter to the ZEBRA_REDISTRIBUTE_DEFAULT_{ADD,DELETE} messages and making the corresponding code changes. Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
Diffstat (limited to 'eigrpd/eigrp_zebra.c')
-rw-r--r--eigrpd/eigrp_zebra.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/eigrpd/eigrp_zebra.c b/eigrpd/eigrp_zebra.c
index 29bd23b514..a810e01468 100644
--- a/eigrpd/eigrp_zebra.c
+++ b/eigrpd/eigrp_zebra.c
@@ -425,7 +425,7 @@ void eigrp_zebra_route_delete(struct prefix *p)
int eigrp_is_type_redistributed(int type)
{
return ((DEFAULT_ROUTE_TYPE(type))
- ? vrf_bitmap_check(zclient->default_information,
+ ? vrf_bitmap_check(zclient->default_information[AFI_IP],
VRF_DEFAULT)
: vrf_bitmap_check(zclient->redist[AFI_IP][type],
VRF_DEFAULT));