From ca8cbecd5c9e0d62c228c8dc88e8386369f040f1 Mon Sep 17 00:00:00 2001 From: Mobashshera Rasool Date: Tue, 16 Aug 2022 00:42:26 -0700 Subject: [PATCH] pim6d: Add debug mroute6 and detail commands Adding below debug CLIs: debug mroute6 debug mroute6 detail Signed-off-by: Mobashshera Rasool --- pimd/pim6_cmd.c | 35 +++++++++++++++++++++++++++++++++++ pimd/pim6_cmd.h | 1 + pimd/pim_addr.h | 2 ++ pimd/pim_vty.c | 4 ++-- 4 files changed, 40 insertions(+), 2 deletions(-) diff --git a/pimd/pim6_cmd.c b/pimd/pim6_cmd.c index 01c5745426..dc84de6bfd 100644 --- a/pimd/pim6_cmd.c +++ b/pimd/pim6_cmd.c @@ -1516,6 +1516,37 @@ DEFPY (debug_pimv6_zebra, return CMD_SUCCESS; } +DEFPY (debug_mroute6, + debug_mroute6_cmd, + "[no] debug mroute6", + NO_STR + DEBUG_STR + DEBUG_MROUTE6_STR) +{ + if (!no) + PIM_DO_DEBUG_MROUTE; + else + PIM_DONT_DEBUG_MROUTE; + + return CMD_SUCCESS; +} + +DEFPY (debug_mroute6_detail, + debug_mroute6_detail_cmd, + "[no] debug mroute6 detail", + NO_STR + DEBUG_STR + DEBUG_MROUTE6_STR + "detailed\n") +{ + if (!no) + PIM_DO_DEBUG_MROUTE_DETAIL; + else + PIM_DONT_DEBUG_MROUTE_DETAIL; + + return CMD_SUCCESS; +} + DEFUN_NOSH (show_debugging_pimv6, show_debugging_pimv6_cmd, "show debugging [pimv6]", @@ -1660,6 +1691,8 @@ void pim_cmd_init(void) install_element(ENABLE_NODE, &debug_pimv6_trace_cmd); install_element(ENABLE_NODE, &debug_pimv6_trace_detail_cmd); install_element(ENABLE_NODE, &debug_pimv6_zebra_cmd); + install_element(ENABLE_NODE, &debug_mroute6_cmd); + install_element(ENABLE_NODE, &debug_mroute6_detail_cmd); install_element(CONFIG_NODE, &debug_pimv6_cmd); install_element(CONFIG_NODE, &debug_pimv6_nht_cmd); @@ -1671,4 +1704,6 @@ void pim_cmd_init(void) install_element(CONFIG_NODE, &debug_pimv6_trace_cmd); install_element(CONFIG_NODE, &debug_pimv6_trace_detail_cmd); install_element(CONFIG_NODE, &debug_pimv6_zebra_cmd); + install_element(CONFIG_NODE, &debug_mroute6_cmd); + install_element(CONFIG_NODE, &debug_mroute6_detail_cmd); } diff --git a/pimd/pim6_cmd.h b/pimd/pim6_cmd.h index 8fb82d9f26..c45c998453 100644 --- a/pimd/pim6_cmd.h +++ b/pimd/pim6_cmd.h @@ -57,6 +57,7 @@ #define DEBUG_PIMV6_PACKETDUMP_RECV_STR "Dump received packets\n" #define DEBUG_PIMV6_TRACE_STR "PIMv6 internal daemon activity\n" #define DEBUG_PIMV6_ZEBRA_STR "ZEBRA protocol activity\n" +#define DEBUG_MROUTE6_STR "PIMv6 interaction with kernel MFC cache\n" void pim_cmd_init(void); diff --git a/pimd/pim_addr.h b/pimd/pim_addr.h index 2f0743b570..2f2ff24675 100644 --- a/pimd/pim_addr.h +++ b/pimd/pim_addr.h @@ -36,6 +36,7 @@ typedef struct in_addr pim_addr; #define PIM_MAX_BITLEN IPV4_MAX_BITLEN #define PIM_AF_NAME "ip" #define PIM_AF_DBG "pim" +#define PIM_MROUTE_DBG "mroute" #define PIMREG "pimreg" #define PIM_ADDR_FUNCNAME(name) ipv4_##name @@ -61,6 +62,7 @@ typedef struct in6_addr pim_addr; #define PIM_MAX_BITLEN IPV6_MAX_BITLEN #define PIM_AF_NAME "ipv6" #define PIM_AF_DBG "pimv6" +#define PIM_MROUTE_DBG "mroute6" #define PIMREG "pim6reg" #define PIM_ADDR_FUNCNAME(name) ipv6_##name diff --git a/pimd/pim_vty.c b/pimd/pim_vty.c index f9642b2133..3d5d68b1f4 100644 --- a/pimd/pim_vty.c +++ b/pimd/pim_vty.c @@ -78,11 +78,11 @@ int pim_debug_config_write(struct vty *vty) /* PIM_DEBUG_MROUTE catches _DETAIL too */ if (router->debugs & PIM_MASK_MROUTE) { - vty_out(vty, "debug mroute\n"); + vty_out(vty, "debug " PIM_MROUTE_DBG "\n"); ++writes; } if (PIM_DEBUG_MROUTE_DETAIL) { - vty_out(vty, "debug mroute detail\n"); + vty_out(vty, "debug " PIM_MROUTE_DBG " detail\n"); ++writes; }