diff options
author | Donald Sharp <sharpd@cumulusnetworks.com> | 2016-03-31 22:31:52 +0200 |
---|---|---|
committer | Donald Sharp <sharpd@cumulusnetworks.com> | 2016-04-01 21:26:19 +0200 |
commit | 4b8b28d235eec08a43f8e04cbff604bc5dde0d4a (patch) | |
tree | 887a83e049eb362f8a1c0f8ca48dc8a4fc26e2a2 /zebra/main.c | |
parent | bgp: Order neighbor information in show run (diff) | |
download | frr-4b8b28d235eec08a43f8e04cbff604bc5dde0d4a.tar.xz frr-4b8b28d235eec08a43f8e04cbff604bc5dde0d4a.zip |
lib, zebra: Fix vrf new hook callback.
This commit fixes two issues:
1) The creation of a new vrf from the cli was not calling the vrf_create hook.
This is fixed.
2) The zebra_vrf_delete callback was deleting interface information that
belonged to vrf not zvrf. Remove the code as that it was not it's job
to do so.
Ticket: CM-10100
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Reviewed-by: Daniel Walton <dwalton@cumulusnetworks.com>
Diffstat (limited to '')
-rw-r--r-- | zebra/main.c | 10 |
1 files changed, 0 insertions, 10 deletions
diff --git a/zebra/main.c b/zebra/main.c index b3571c26f..ea3aee659 100644 --- a/zebra/main.c +++ b/zebra/main.c @@ -304,22 +304,12 @@ static int zebra_vrf_delete (vrf_id_t vrf_id, const char *name, void **info) { struct zebra_vrf *zvrf = (struct zebra_vrf *) (*info); - struct listnode *list_node; - struct interface *ifp; assert (zvrf); rib_close_table (zvrf->table[AFI_IP][SAFI_UNICAST]); rib_close_table (zvrf->table[AFI_IP6][SAFI_UNICAST]); - for (ALL_LIST_ELEMENTS_RO (vrf_iflist (vrf_id), list_node, ifp)) - { - int operative = if_is_operative (ifp); - UNSET_FLAG (ifp->flags, IFF_UP); - if (operative) - if_down (ifp); - } - list_delete_all_node (zvrf->rid_all_sorted_list); list_delete_all_node (zvrf->rid_lo_sorted_list); |