diff options
| author | Sarita Patra <saritap@vmware.com> | 2019-05-20 10:40:12 -0700 | 
|---|---|---|
| committer | Sarita Patra <saritap@vmware.com> | 2019-05-29 20:36:16 -0700 | 
| commit | 59115451a8fd0f11ac076cd4d832241ef4b3784a (patch) | |
| tree | 6ce08c1a31055584a0a2f650570c3789fcb0d44e /pimd/pim_igmpv3.c | |
| parent | 528628cb2ea4f5a522bf1f6d5b702bb188c4e30e (diff) | |
pimd: new cli to configure last-member-query-count & last-member-query-interval
Introduce new cli commands ip igmp last-member-query-count <1-7>
ip igmp last-member-query-interval <1-255> deciseconds.
Display the config in show running config and show ip igmp interface
Signed-off-by: Sarita Patra <saritap@vmware.com>
Diffstat (limited to 'pimd/pim_igmpv3.c')
| -rw-r--r-- | pimd/pim_igmpv3.c | 16 | 
1 files changed, 10 insertions, 6 deletions
diff --git a/pimd/pim_igmpv3.c b/pimd/pim_igmpv3.c index b845f54f06..bc0460fa03 100644 --- a/pimd/pim_igmpv3.c +++ b/pimd/pim_igmpv3.c @@ -997,7 +997,7 @@ static void group_retransmit_group(struct igmp_group *group)  	char query_buf[query_buf_size]; -	lmqc = igmp->querier_robustness_variable; +	lmqc = pim_ifp->igmp_last_member_query_count;  	lmqi_msec = 100 * pim_ifp->igmp_specific_query_max_response_time_dsec;  	lmqt_msec = lmqc * lmqi_msec; @@ -1076,7 +1076,7 @@ static int group_retransmit_sources(struct igmp_group *group,  	igmp = group->group_igmp_sock;  	pim_ifp = igmp->interface->info; -	lmqc = igmp->querier_robustness_variable; +	lmqc = pim_ifp->igmp_last_member_query_count;  	lmqi_msec = 100 * pim_ifp->igmp_specific_query_max_response_time_dsec;  	lmqt_msec = lmqc * lmqi_msec; @@ -1314,9 +1314,13 @@ static long igmp_source_timer_remain_msec(struct igmp_source *source)  */  static void group_query_send(struct igmp_group *group)  { +	struct pim_interface *pim_ifp; +	struct igmp_sock *igmp;  	long lmqc; /* Last Member Query Count */ -	lmqc = group->group_igmp_sock->querier_robustness_variable; +	igmp = group->group_igmp_sock; +	pim_ifp = igmp->interface->info; +	lmqc = pim_ifp->igmp_last_member_query_count;  	/* lower group timer to lmqt */  	igmp_group_timer_lower_to_lmqt(group); @@ -1351,7 +1355,7 @@ static void source_query_send_by_flag(struct igmp_group *group,  	igmp = group->group_igmp_sock;  	pim_ifp = igmp->interface->info; -	lmqc = igmp->querier_robustness_variable; +	lmqc = pim_ifp->igmp_last_member_query_count;  	lmqi_msec = 100 * pim_ifp->igmp_specific_query_max_response_time_dsec;  	lmqt_msec = lmqc * lmqi_msec; @@ -1509,7 +1513,7 @@ void igmp_group_timer_lower_to_lmqt(struct igmp_group *group)  	ifname = ifp->name;  	lmqi_dsec = pim_ifp->igmp_specific_query_max_response_time_dsec; -	lmqc = igmp->querier_robustness_variable; +	lmqc = pim_ifp->igmp_last_member_query_count;  	lmqt_msec = PIM_IGMP_LMQT_MSEC(  		lmqi_dsec, lmqc); /* lmqt_msec = (100 * lmqi_dsec) * lmqc */ @@ -1546,7 +1550,7 @@ void igmp_source_timer_lower_to_lmqt(struct igmp_source *source)  	ifname = ifp->name;  	lmqi_dsec = pim_ifp->igmp_specific_query_max_response_time_dsec; -	lmqc = igmp->querier_robustness_variable; +	lmqc = pim_ifp->igmp_last_member_query_count;  	lmqt_msec = PIM_IGMP_LMQT_MSEC(  		lmqi_dsec, lmqc); /* lmqt_msec = (100 * lmqi_dsec) * lmqc */  | 
