#include "plist.h"
#include "stream.h"
#include "queue.h"
+#include "vrf.h"
#include "bgpd/bgpd.h"
#include "bgpd/bgp_attr.h"
/* reverse bgp_zebra_init/if_init */
if (retain_mode)
if_add_hook (IF_DELETE_HOOK, NULL);
- for (ALL_LIST_ELEMENTS (iflist, node, nnode, ifp))
+ for (ALL_LIST_ELEMENTS_RO (iflist, node, ifp))
{
struct listnode *c_node, *c_nnode;
struct connected *c;
for (ALL_LIST_ELEMENTS (ifp->connected, c_node, c_nnode, c))
bgp_connected_delete (c);
-
- if_delete (ifp);
}
- list_free (iflist);
/* reverse bgp_attr_init */
bgp_attr_finish ();
/* reverse community_list_init */
community_list_terminate (bgp_clist);
+ vrf_terminate ();
cmd_terminate ();
vty_terminate ();
if (zclient)
cmd_init (1);
vty_init (bm->master);
memory_init ();
+ vrf_init ();
/* BGP related initialization. */
bgp_init ();
zclient->nexthop_update = bgp_read_nexthop_update;
zclient->import_check_update = bgp_read_import_check_update;
- /* Interface related init. */
- if_init ();
-
bgp_nexthop_buf = stream_new(BGP_NEXTHOP_BUF_SIZE);
bgp_ifindices_buf = stream_new(BGP_IFINDICES_BUF_SIZE);
}
isis_circuit_init ()
{
/* Initialize Zebra interface data structure */
- if_init ();
if_add_hook (IF_NEW_HOOK, isis_if_new_hook);
if_add_hook (IF_DELETE_HOOK, isis_if_delete_hook);
#include "sigevent.h"
#include "filter.h"
#include "zclient.h"
+#include "vrf.h"
#include "isisd/dict.h"
#include "include-netbsd/iso.h"
vty_init (master);
memory_init ();
access_list_init();
+ vrf_init ();
isis_init ();
isis_circuit_init ();
isis_spf_cmds_init ();
#include <zebra.h>
+#include "if.h"
#include "vrf.h"
#include "prefix.h"
#include "table.h"
/* Set the default VRF name. */
default_vrf->name = XSTRDUP (MTYPE_VRF_NAME, "Default-IP-Routing-Table");
+
+ if_init ();
}
/* Terminate VRF module. */
route_table_finish (vrf_table);
vrf_table = NULL;
+
+ if_terminate ();
}
#include "privs.h"
#include "sigevent.h"
#include "zclient.h"
+#include "vrf.h"
#include "ospf6d.h"
#include "ospf6_top.h"
ospf6_asbr_terminate ();
ospf6_lsa_terminate ();
- if_terminate ();
+ vrf_terminate ();
vty_terminate ();
cmd_terminate ();
cmd_init (1);
vty_init (master);
memory_init ();
- if_init ();
+ vrf_init ();
access_list_init ();
prefix_list_init ();
ospf_if_init ()
{
/* Initialize Zebra interface data structure. */
- if_init ();
om->iflist = iflist;
if_add_hook (IF_NEW_HOOK, ospf_if_new_hook);
if_add_hook (IF_DELETE_HOOK, ospf_if_delete_hook);
#include "privs.h"
#include "sigevent.h"
#include "zclient.h"
+#include "vrf.h"
#include "ospfd/ospfd.h"
#include "ospfd/ospf_interface.h"
debug_init ();
vty_init (master);
memory_init ();
+ vrf_init ();
access_list_init ();
prefix_list_init ();
rip_if_init (void)
{
/* Default initial size of interface vector. */
- if_init();
if_add_hook (IF_NEW_HOOK, rip_interface_new_hook);
if_add_hook (IF_DELETE_HOOK, rip_interface_delete_hook);
#include "privs.h"
#include "sigevent.h"
#include "zclient.h"
+#include "vrf.h"
#include "ripd/ripd.h"
vty_init (master);
memory_init ();
keychain_init ();
+ vrf_init ();
/* RIP related initialization. */
rip_init ();
#include "table.h"
#include "thread.h"
#include "privs.h"
+#include "vrf.h"
#include "ripngd/ripngd.h"
#include "ripngd/ripng_debug.h"
ripng_if_init ()
{
/* Interface initialize. */
- iflist = list_new ();
if_add_hook (IF_NEW_HOOK, ripng_if_new_hook);
if_add_hook (IF_DELETE_HOOK, ripng_if_delete_hook);
#include "if.h"
#include "privs.h"
#include "sigevent.h"
+#include "vrf.h"
#include "ripngd/ripngd.h"
cmd_init (1);
vty_init (master);
memory_init ();
+ vrf_init ();
/* RIPngd inits. */
ripng_init ();
zebra_if_init (void)
{
/* Initialize interface and new hook. */
- if_init ();
if_add_hook (IF_NEW_HOOK, if_zebra_new_hook);
if_add_hook (IF_DELETE_HOOK, if_zebra_delete_hook);
cmd_init (1);
vty_init (zebrad.master);
memory_init ();
- if_init();
zebra_debug_init ();
zebra_if_init ();
test_cmd_init ();