]> git.proxmox.com Git - mirror_frr.git/commitdiff
zebra: Delete AUTO macs when neigh list is empty
authorMitesh Kanjariya <mitesh@marvel-07.cumulusnetworks.com>
Sat, 19 Aug 2017 00:40:52 +0000 (17:40 -0700)
committerMitesh Kanjariya <mitesh@marvel-07.cumulusnetworks.com>
Sun, 20 Aug 2017 12:53:15 +0000 (05:53 -0700)
Ticket: CM-17660
Review: CCR-6624
Testing: Manual

Signed-off-by: Mitesh Kanjariya <mitesh@cumulusnetworks.com>
zebra/zebra_vxlan.c

index c2ea8ab58c4212c728d3adba799dc9d39908e461..86c3ce1d00b7643f21d5f3d67bb94cc62febb5af 100644 (file)
@@ -204,13 +204,18 @@ static void zvni_print_neigh(zebra_neigh_t *n, void *ctxt, json_object *json)
                if (json == NULL) {
                        vty_out(vty, " Remote VTEP: %s",
                                inet_ntoa(n->r_vtep_ip));
-                       vty_out(vty, " State: %s", IS_ZEBRA_NEIGH_ACTIVE(n)
-                                                          ? "Active"
-                                                          : "Inactive");
                } else
                        json_object_string_add(json, "remoteVtep",
                                               inet_ntoa(n->r_vtep_ip));
        }
+       if (CHECK_FLAG(n->flags, ZEBRA_NEIGH_LOCAL)) {
+               if (!json) {
+                       vty_out(vty, "\n");
+                       vty_out(vty, " State: %s",
+                               IS_ZEBRA_NEIGH_ACTIVE(n) ? "Active"
+                                                        : "Inactive");
+               }
+       }
        if (json == NULL)
                vty_out(vty, "\n");
 }
@@ -2869,7 +2874,7 @@ int zebra_vxlan_local_neigh_del(struct interface *ifp,
 
        /* see if the AUTO mac needs to be deleted */
        if (CHECK_FLAG(zmac->flags, ZEBRA_MAC_AUTO)
-           || !listcount(zmac->neigh_list))
+           && !listcount(zmac->neigh_list))
                zvni_mac_del(zvni, zmac);
 
        return 0;