summaryrefslogtreecommitdiffstats
path: root/pimd/pim6_mld.c
diff options
context:
space:
mode:
authorAbhishek N R <abnr@vmware.com>2022-07-11 17:51:52 +0200
committerAbhishek N R <abnr@vmware.com>2022-08-29 08:33:07 +0200
commit51b4991feb398dd557c15af5264623214e2b5835 (patch)
tree893432a2b6d23729cb6a03c24d388b7b8bfa572f /pimd/pim6_mld.c
parentpim6d: Completing "ipv6 mld query-max-response-time" command. (diff)
downloadfrr-51b4991feb398dd557c15af5264623214e2b5835.tar.xz
frr-51b4991feb398dd557c15af5264623214e2b5835.zip
pim6d: Completing "ipv6 mld last-member-query-count" command.
Signed-off-by: Abhishek N R <abnr@vmware.com>
Diffstat (limited to 'pimd/pim6_mld.c')
-rw-r--r--pimd/pim6_mld.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/pimd/pim6_mld.c b/pimd/pim6_mld.c
index 2bffede80..2ffdefc2f 100644
--- a/pimd/pim6_mld.c
+++ b/pimd/pim6_mld.c
@@ -418,7 +418,7 @@ static void gm_sg_update(struct gm_sg *sg, bool has_expired)
gm_sg_timer_start(gm_ifp, sg, timers.expire_wait);
THREAD_OFF(sg->t_sg_query);
- sg->n_query = gm_ifp->cur_qrv;
+ sg->n_query = gm_ifp->cur_lmqc;
sg->query_sbit = false;
gm_trigger_specific(sg);
}
@@ -2095,6 +2095,7 @@ static void gm_start(struct interface *ifp)
gm_ifp->cur_query_intv = pim_ifp->gm_default_query_interval * 1000;
gm_ifp->cur_query_intv_trig = gm_ifp->cur_query_intv;
gm_ifp->cur_max_resp = pim_ifp->gm_query_max_response_time_dsec * 100;
+ gm_ifp->cur_lmqc = pim_ifp->gm_last_member_query_count;
gm_ifp->cfg_timing_fuzz.tv_sec = 0;
gm_ifp->cfg_timing_fuzz.tv_usec = 10 * 1000;
@@ -2277,6 +2278,9 @@ void gm_ifp_update(struct interface *ifp)
if (gm_ifp->cur_max_resp != cfg_max_response)
gm_ifp->cur_max_resp = cfg_max_response;
+ if (gm_ifp->cur_lmqc != pim_ifp->gm_last_member_query_count)
+ gm_ifp->cur_lmqc = pim_ifp->gm_last_member_query_count;
+
enum gm_version cfg_version;
if (pim_ifp->mld_version == 1)