]> git.proxmox.com Git - mirror_frr.git/commitdiff
zebra : zebra redistributing IPV4 link local Addresses inconsistently.
authorvdhingra <vdhingra@vmware.com>
Wed, 14 Aug 2019 07:18:43 +0000 (00:18 -0700)
committervdhingra <vdhingra@vmware.com>
Wed, 14 Aug 2019 13:44:22 +0000 (06:44 -0700)
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>
zebra/redistribute.c

index 0280cde238050a13dbe74ebafbf115adfee726c3..1ae2ba92b0cd513a337216bef39b82eea4938148 100644 (file)
@@ -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],