ospf6_bfd_init();
install_node (&debug_node, config_write_ospf6_debug);
+ install_element_ospf6_debug_message ();
+ install_element_ospf6_debug_lsa ();
+ install_element_ospf6_debug_interface ();
+ install_element_ospf6_debug_neighbor ();
+ install_element_ospf6_debug_zebra ();
+ install_element_ospf6_debug_spf ();
+ install_element_ospf6_debug_route ();
+ install_element_ospf6_debug_brouter ();
+ install_element_ospf6_debug_asbr ();
+ install_element_ospf6_debug_abr ();
+ install_element_ospf6_debug_flood ();
+
+ install_element_ospf6_clear_interface ();
+
+ install_element (VIEW_NODE, &show_version_ospf6_cmd);
+ install_element (ENABLE_NODE, &show_version_ospf6_cmd);
+
+ install_element (VIEW_NODE, &show_ipv6_ospf6_border_routers_cmd);
+ install_element (ENABLE_NODE, &show_ipv6_ospf6_border_routers_cmd);
+
+ install_element (VIEW_NODE, &show_ipv6_ospf6_linkstate_cmd);
+ install_element (VIEW_NODE, &show_ipv6_ospf6_linkstate_detail_cmd);
+ install_element (ENABLE_NODE, &show_ipv6_ospf6_linkstate_cmd);
+ install_element (ENABLE_NODE, &show_ipv6_ospf6_linkstate_detail_cmd);
+
+#define INSTALL(n,c) \
+ install_element (n ## _NODE, &show_ipv6_ospf6_ ## c)
+
+ INSTALL (VIEW, database_cmd);
+ INSTALL (VIEW, database_type_cmd);
+ INSTALL (VIEW, database_id_cmd);
+ INSTALL (VIEW, database_router_cmd);
+ INSTALL (VIEW, database_type_id_cmd);
+ INSTALL (VIEW, database_type_router_cmd);
+ INSTALL (VIEW, database_adv_router_linkstate_id_cmd);
+ INSTALL (VIEW, database_id_router_cmd);
+ INSTALL (VIEW, database_type_id_router_cmd);
+ INSTALL (VIEW, database_type_adv_router_linkstate_id_cmd);
+ INSTALL (VIEW, database_self_originated_cmd);
+ INSTALL (VIEW, database_type_self_originated_cmd);
+ INSTALL (VIEW, database_type_id_self_originated_cmd);
+ INSTALL (VIEW, database_type_self_originated_linkstate_id_cmd);
+
+ INSTALL (ENABLE, database_cmd);
+ INSTALL (ENABLE, database_type_cmd);
+ INSTALL (ENABLE, database_id_cmd);
+ INSTALL (ENABLE, database_router_cmd);
+ INSTALL (ENABLE, database_type_id_cmd);
+ INSTALL (ENABLE, database_type_router_cmd);
+ INSTALL (ENABLE, database_adv_router_linkstate_id_cmd);
+ INSTALL (ENABLE, database_id_router_cmd);
+ INSTALL (ENABLE, database_type_id_router_cmd);
+ INSTALL (ENABLE, database_type_adv_router_linkstate_id_cmd);
+ INSTALL (ENABLE, database_self_originated_cmd);
+ INSTALL (ENABLE, database_type_self_originated_cmd);
+ INSTALL (ENABLE, database_type_id_self_originated_cmd);
+ INSTALL (ENABLE, database_type_self_originated_linkstate_id_cmd);
+
+ /* Make ospf protocol socket. */
+ ospf6_serv_sock ();
+ thread_add_read (master, ospf6_receive, NULL, ospf6_sock);
+}
+
+void
+ospf6_clean (void)
+{
+ if (!ospf6)
+ return;
+ if (ospf6->route_table)
+ ospf6_route_remove_all (ospf6->route_table);
+ if (ospf6->brouter_table)
+ ospf6_route_remove_all (ospf6->brouter_table);
+}
}
}
-/*
- * CHECK ME - The following ALIASes need to be implemented in this DEFUN
- * "router-id A.B.C.D " VRF_CMD_STR,
- * "Manually set the router-id\n"
- * "IP address to use for router-id\n"
- * VRF_CMD_HELP_STR
- *
- */
DEFUN (router_id,
router_id_cmd,
- "router-id A.B.C.D",
+ "router-id A.B.C.D [vrf NAME]",
"Manually set the router-id\n"
- "IP address to use for router-id\n")
+ "IP address to use for router-id\n"
+ VRF_CMD_HELP_STR)
{
int idx_ipv4 = 1;
+ int idx_name = 3;
+
struct prefix rid;
vrf_id_t vrf_id = VRF_DEFAULT;
rid.prefixlen = 32;
rid.family = AF_INET;
- if (argc > 1)
- VRF_GET_ID (vrf_id, argv[1]);
+ if (argc > 2)
+ VRF_GET_ID (vrf_id, argv[idx_name]->arg);
router_id_set (&rid, vrf_id);
return CMD_SUCCESS;
}
-
-/*
- * CHECK ME - The following ALIASes need to be implemented in this DEFUN
- * "no router-id A.B.C.D",
- * NO_STR
- * "Remove the manually configured router-id\n"
- * "IP address to use for router-id\n"
- *
- * "no router-id A.B.C.D " VRF_CMD_STR,
- * NO_STR
- * "Remove the manually configured router-id\n"
- * "IP address to use for router-id\n"
- * VRF_CMD_HELP_STR
- *
- */
DEFUN (no_router_id,
no_router_id_cmd,
- "no router-id",
+ "no router-id [A.B.C.D [vrf NAME]]",
NO_STR
- "Remove the manually configured router-id\n")
+ "Remove the manually configured router-id\n"
+ "IP address to use for router-id\n"
+ VRF_CMD_HELP_STR)
{
+ int idx_name = 4;
+
struct prefix rid;
vrf_id_t vrf_id = VRF_DEFAULT;
rid.prefixlen = 0;
rid.family = AF_INET;
- if (argc > 1)
- VRF_GET_ID (vrf_id, argv[1]);
+ if (argc > 3)
+ VRF_GET_ID (vrf_id, argv[idx_name]->arg);
router_id_set (&rid, vrf_id);