From: github login name Date: Mon, 5 Jul 2021 11:07:25 +0000 (-0700) Subject: pimd: make pim interface hold interval range 1-630 X-Git-Tag: frr-8.2.2~723^2~1 X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=142774530ade49f63997bd52c434457fe8979bdf;p=mirror_frr.git pimd: make pim interface hold interval range 1-630 Making the interface holdtime range to 3.5 times the hello-time As per 7761, Section 4.11: The Holdtime in a Hello message should be set to (3.5 * Hello_Period), giving a default value of 105 seconds. Therefore providing the user also to configure max upto 3.5 times the hello timer interval. Signed-off-by: Mobashshera Rasool --- diff --git a/doc/user/pim.rst b/doc/user/pim.rst index 83d19d618..4b67326b3 100644 --- a/doc/user/pim.rst +++ b/doc/user/pim.rst @@ -199,7 +199,7 @@ is in a vrf, enter the interface command with the vrf keyword at the end. Set the DR Priority for the interface. This command is useful to allow the user to influence what node becomes the DR for a lan segment. -.. clicmd:: ip pim hello (1-180) (1-180) +.. clicmd:: ip pim hello (1-180) (1-630) Set the pim hello and hold interval for a interface. diff --git a/pimd/pim_cmd.c b/pimd/pim_cmd.c index 0e8fb2b79..5adecf5e3 100644 --- a/pimd/pim_cmd.c +++ b/pimd/pim_cmd.c @@ -8767,7 +8767,7 @@ DEFUN (interface_no_ip_mroute, DEFUN (interface_ip_pim_hello, interface_ip_pim_hello_cmd, - "ip pim hello (1-180) [(1-180)]", + "ip pim hello (1-180) [(1-630)]", IP_STR PIM_STR IFACE_PIM_HELLO_STR @@ -8802,7 +8802,7 @@ DEFUN (interface_ip_pim_hello, DEFUN (interface_no_ip_pim_hello, interface_no_ip_pim_hello_cmd, - "no ip pim hello [(1-180) [(1-180)]]", + "no ip pim hello [(1-180) [(1-630)]]", NO_STR IP_STR PIM_STR diff --git a/pimd/pim_nb_config.c b/pimd/pim_nb_config.c index dfdbd6dee..bd5e21502 100644 --- a/pimd/pim_nb_config.c +++ b/pimd/pim_nb_config.c @@ -1613,7 +1613,7 @@ int lib_interface_pim_hello_holdtime_modify(struct nb_cb_modify_args *args) ifp = nb_running_get_entry(args->dnode, NULL, true); pim_ifp = ifp->info; pim_ifp->pim_default_holdtime = - yang_dnode_get_uint8(args->dnode, NULL); + yang_dnode_get_uint16(args->dnode, NULL); break; } diff --git a/yang/frr-pim.yang b/yang/frr-pim.yang index 6329e4558..f73776c1a 100644 --- a/yang/frr-pim.yang +++ b/yang/frr-pim.yang @@ -351,8 +351,8 @@ module frr-pim { } leaf hello-holdtime { - type uint8 { - range "1..180"; + type uint16 { + range "1..630"; } must ". > ./../hello-interval" { error-message "HoldTime must be greater than Hello";