From cc14df13918d2d16adb24878804bc7e287ea8e02 Mon Sep 17 00:00:00 2001 From: Donald Sharp Date: Wed, 2 Aug 2017 08:15:45 -0400 Subject: [PATCH] pimd: Add `ip pim rp keep-alive-time X` Ticket: CM-17134 Signed-off-by: Donald Sharp --- pimd/pim_cmd.c | 33 +++++++++++++++++++++++++++++++++ pimd/pim_vty.c | 5 +++++ 2 files changed, 38 insertions(+) diff --git a/pimd/pim_cmd.c b/pimd/pim_cmd.c index 0cc8f0c87e..491c02e258 100644 --- a/pimd/pim_cmd.c +++ b/pimd/pim_cmd.c @@ -5225,6 +5225,35 @@ DEFUN (no_ip_pim_register_suppress, return CMD_SUCCESS; } +DEFUN (ip_pim_rp_keep_alive, + ip_pim_rp_keep_alive_cmd, + "ip pim rp keep-alive-timer (31-60000)", + IP_STR + "pim multicast routing\n" + "Rendevous Point\n" + "Keep alive Timer\n" + "Seconds\n") +{ + PIM_DECLVAR_CONTEXT(vrf, pim); + pim->rp_keep_alive_time = atoi(argv[3]->arg); + return CMD_SUCCESS; +} + +DEFUN (no_ip_pim_rp_keep_alive, + no_ip_pim_rp_keep_alive_cmd, + "no ip pim rp keep-alive-timer (31-60000)", + NO_STR + IP_STR + "pim multicast routing\n" + "Rendevous Point\n" + "Keep alive Timer\n" + "Seconds\n") +{ + PIM_DECLVAR_CONTEXT(vrf, pim); + pim->rp_keep_alive_time = PIM_KEEPALIVE_PERIOD; + return CMD_SUCCESS; +} + DEFUN (ip_pim_keep_alive, ip_pim_keep_alive_cmd, "ip pim keep-alive-timer (31-60000)", @@ -8397,8 +8426,12 @@ void pim_cmd_init(void) install_element(VRF_NODE, &no_ip_pim_joinprune_time_cmd); install_element(CONFIG_NODE, &ip_pim_keep_alive_cmd); install_element(VRF_NODE, &ip_pim_keep_alive_cmd); + install_element(CONFIG_NODE, &ip_pim_rp_keep_alive_cmd); + install_element(VRF_NODE, &ip_pim_rp_keep_alive_cmd); install_element(CONFIG_NODE, &no_ip_pim_keep_alive_cmd); install_element(VRF_NODE, &no_ip_pim_keep_alive_cmd); + install_element(CONFIG_NODE, &no_ip_pim_rp_keep_alive_cmd); + install_element(VRF_NODE, &no_ip_pim_rp_keep_alive_cmd); install_element(CONFIG_NODE, &ip_pim_packets_cmd); install_element(VRF_NODE, &ip_pim_packets_cmd); install_element(CONFIG_NODE, &no_ip_pim_packets_cmd); diff --git a/pimd/pim_vty.c b/pimd/pim_vty.c index b48bb52f3f..8914f6eb00 100644 --- a/pimd/pim_vty.c +++ b/pimd/pim_vty.c @@ -183,6 +183,11 @@ int pim_global_config_write_worker(struct pim_instance *pim, struct vty *vty) pim->keep_alive_time); ++writes; } + if (pim->rp_keep_alive_time != (unsigned int)PIM_RP_KEEPALIVE_PERIOD) { + vty_out(vty, "%sip pim rp keep-alive-timer %d\n", spaces, + pim->rp_keep_alive_time); + ++writes; + } if (qpim_packet_process != PIM_DEFAULT_PACKET_PROCESS) { vty_out(vty, "%sip pim packets %d\n", spaces, qpim_packet_process); -- 2.39.5