From 92300491f60ef24128054bbf42b1b22ed12f2f9e Mon Sep 17 00:00:00 2001 From: Daniel Walton Date: Sun, 25 Sep 2016 03:00:04 +0000 Subject: [PATCH] zebra: CHECK ME fixes Signed-off-by: Daniel Walton --- ospf6d/ospf6_asbr.c | 7 +++++ ospf6d/ospf6d.c | 73 +++++++++++++++++++++++++++++++++++++++++++++ zebra/interface.c | 1 - zebra/router-id.c | 46 ++++++++++------------------ 4 files changed, 95 insertions(+), 32 deletions(-) diff --git a/ospf6d/ospf6_asbr.c b/ospf6d/ospf6_asbr.c index 014320a2f8..c35b30a65b 100644 --- a/ospf6d/ospf6_asbr.c +++ b/ospf6d/ospf6_asbr.c @@ -1421,3 +1421,10 @@ config_write_ospf6_debug_asbr (struct vty *vty) } void +install_element_ospf6_debug_asbr () +{ + install_element (ENABLE_NODE, &debug_ospf6_asbr_cmd); + install_element (ENABLE_NODE, &no_debug_ospf6_asbr_cmd); + install_element (CONFIG_NODE, &debug_ospf6_asbr_cmd); + install_element (CONFIG_NODE, &no_debug_ospf6_asbr_cmd); +} diff --git a/ospf6d/ospf6d.c b/ospf6d/ospf6d.c index c72dde0acf..b572288851 100644 --- a/ospf6d/ospf6d.c +++ b/ospf6d/ospf6d.c @@ -1790,3 +1790,76 @@ ospf6_init (void) 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); +} diff --git a/zebra/interface.c b/zebra/interface.c index 26315bd6c7..d1f21c17b3 100644 --- a/zebra/interface.c +++ b/zebra/interface.c @@ -2987,7 +2987,6 @@ zebra_if_init (void) install_element (ENABLE_NODE, &show_interface_desc_vrf_all_cmd); install_element (CONFIG_NODE, &zebra_interface_cmd); install_element (CONFIG_NODE, &no_interface_cmd); - install_element (CONFIG_NODE, &no_interface_vrf_cmd); install_default (INTERFACE_NODE); install_element (INTERFACE_NODE, &interface_desc_cmd); install_element (INTERFACE_NODE, &no_interface_desc_cmd); diff --git a/zebra/router-id.c b/zebra/router-id.c index 6e1d434ec4..23b8cc743c 100644 --- a/zebra/router-id.c +++ b/zebra/router-id.c @@ -214,21 +214,16 @@ router_id_write (struct vty *vty) } } -/* - * 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; @@ -239,35 +234,24 @@ DEFUN (router_id, 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; @@ -275,8 +259,8 @@ DEFUN (no_router_id, 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); -- 2.39.5