summaryrefslogtreecommitdiff
path: root/zebra/redistribute.c
diff options
context:
space:
mode:
authorvdhingra <vdhingra@vmware.com>2019-08-14 00:18:43 -0700
committervdhingra <vdhingra@vmware.com>2019-08-14 06:44:22 -0700
commit79becec8acebb2ceb513facdc25ae316366e0b13 (patch)
treecfc85316ec1ba698baa7e75c03dbea513e15aaa2 /zebra/redistribute.c
parentce935bc2843cb35c5450e1ea9beb1c58474d6e2c (diff)
zebra : zebra redistributing IPV4 link local Addresses inconsistently.
Create an interface with IP4 link local address 169.254.0.131/25. In BGP enable the redistribute connected. Now Zebra will not send the route corresponding to IPV4 link local address. Now made this interface down and up. Zebra sends the route to BGP. Zebra should not send this route to BGP. This Fix would make the behaviour consistent and would not send the routes corresponding to IPV4 Link local addresses. Signed-off-by: vishaldhingra <vdhingra@vmware.com>
Diffstat (limited to 'zebra/redistribute.c')
-rw-r--r--zebra/redistribute.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/zebra/redistribute.c b/zebra/redistribute.c
index 0280cde238..1ae2ba92b0 100644
--- a/zebra/redistribute.c
+++ b/zebra/redistribute.c
@@ -172,6 +172,13 @@ void redistribute_update(const struct prefix *p, const struct prefix *src_p,
__FUNCTION__);
return;
}
+ if (!zebra_check_addr(p)) {
+ if (IS_ZEBRA_DEBUG_RIB)
+ zlog_debug("Redist update filter prefix %s",
+ prefix2str(p, buf, sizeof(buf)));
+ return;
+ }
+
for (ALL_LIST_ELEMENTS(zrouter.client_list, node, nnode, client)) {
send_redistribute = 0;
@@ -246,6 +253,13 @@ void redistribute_delete(const struct prefix *p, const struct prefix *src_p,
return;
}
+ if (!zebra_check_addr(p)) {
+ if (IS_ZEBRA_DEBUG_RIB)
+ zlog_debug("Redist delete filter prefix %s",
+ prefix2str(p, buf, sizeof(buf)));
+ return;
+ }
+
for (ALL_LIST_ELEMENTS(zrouter.client_list, node, nnode, client)) {
if ((is_default_prefix(p)
&& vrf_bitmap_check(client->redist_default[afi],