From 191f5695df6b66e95ab028cc15eea53966a058b4 Mon Sep 17 00:00:00 2001 From: Donald Sharp Date: Wed, 16 Nov 2016 18:11:49 -0500 Subject: [PATCH] pimd: Add 'ip pim register-suppress-time <5-60000>' Add the 'ip pim register-suppress-time ...' command. Remove the 'no ip pim rp keep-al...' command as that the register suppress set that value. Signed-off-by: Donald Sharp --- pimd/pim_cmd.c | 62 ++++++++++++++++++++++++-------------------------- pimd/pim_vty.c | 12 +++++----- 2 files changed, 36 insertions(+), 38 deletions(-) diff --git a/pimd/pim_cmd.c b/pimd/pim_cmd.c index c28aad0384..ebe8b362ba 100644 --- a/pimd/pim_cmd.c +++ b/pimd/pim_cmd.c @@ -3360,15 +3360,40 @@ pim_rp_cmd_worker (struct vty *vty, const char *rp, const char *group, const cha return CMD_SUCCESS; } +DEFUN (ip_pim_register_suppress, + ip_pim_register_suppress_cmd, + "ip pim register-suppress-time <5-60000>", + IP_STR + "pim multicast routing\n" + "Register Suppress Timer\n" + "Seconds\n") +{ + qpim_keep_alive_time = atoi (argv[3]->arg); + return CMD_SUCCESS; +} + +DEFUN (no_ip_pim_register_suppress, + no_ip_pim_register_suppress_cmd, + "no ip pim register-suppress-time <5-60000>", + NO_STR + IP_STR + "pim multicast routing\n" + "Register Suppress Timer\n" + "Seconds\n") +{ + qpim_register_suppress_time = PIM_REGISTER_SUPPRESSION_TIME_DEFAULT; + return CMD_SUCCESS; +} + DEFUN (ip_pim_keep_alive, ip_pim_keep_alive_cmd, "ip pim keep-alive-timer <31-60000>", IP_STR "pim multicast routing\n" - "Keep alive Timer" - "Seconds") + "Keep alive Timer\n" + "Seconds\n") { - qpim_keep_alive_time = atoi (argv[3]->arg); + qpim_rp_keep_alive_time = atoi (argv[4]->arg); return CMD_SUCCESS; } @@ -3385,33 +3410,6 @@ DEFUN (no_ip_pim_keep_alive, 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") -{ - qpim_rp_keep_alive_time = atoi (argv[4]->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") -{ - qpim_rp_keep_alive_time = PIM_RP_KEEPALIVE_PERIOD; - return CMD_SUCCESS; -} - DEFUN (ip_pim_rp, ip_pim_rp_cmd, "ip pim rp A.B.C.D [A.B.C.D/M]", @@ -5921,10 +5919,10 @@ void pim_cmd_init() install_element (CONFIG_NODE, &no_ip_pim_rp_cmd); install_element (CONFIG_NODE, &ip_pim_rp_prefix_list_cmd); install_element (CONFIG_NODE, &no_ip_pim_rp_prefix_list_cmd); + install_element (CONFIG_NODE, &ip_pim_register_suppress_cmd); + install_element (CONFIG_NODE, &no_ip_pim_register_suppress_cmd); install_element (CONFIG_NODE, &ip_pim_keep_alive_cmd); install_element (CONFIG_NODE, &no_ip_pim_keep_alive_cmd); - install_element (CONFIG_NODE, &ip_pim_rp_keep_alive_cmd); - install_element (CONFIG_NODE, &no_ip_pim_rp_keep_alive_cmd); install_element (CONFIG_NODE, &ip_ssmpingd_cmd); install_element (CONFIG_NODE, &no_ip_ssmpingd_cmd); install_element (CONFIG_NODE, &ip_msdp_peer_cmd); diff --git a/pimd/pim_vty.c b/pimd/pim_vty.c index d7251e0348..b72602e22e 100644 --- a/pimd/pim_vty.c +++ b/pimd/pim_vty.c @@ -156,18 +156,18 @@ int pim_global_config_write(struct vty *vty) writes += pim_rp_config_write (vty); + if (qpim_register_suppress_time != PIM_REGISTER_SUPPRESSION_TIME_DEFAULT) + { + vty_out (vty, "ip pim register-suppress-time %d%s", + qpim_register_suppress_time, VTY_NEWLINE); + ++writes; + } if (qpim_keep_alive_time != PIM_KEEPALIVE_PERIOD) { vty_out (vty, "ip pim keep-alive-timer %d%s", qpim_keep_alive_time, VTY_NEWLINE); ++writes; } - if (qpim_rp_keep_alive_time != PIM_RP_KEEPALIVE_PERIOD) - { - vty_out (vty, "ip pim rp keep-alive-timer %d%s", - qpim_rp_keep_alive_time, VTY_NEWLINE); - ++writes; - } if (qpim_ssmpingd_list) { struct listnode *node;