]> git.puffer.fish Git - mirror/frr.git/commit
pim6d: MLD conformance querier-non-querier transition fix 13837/head
authorMobashshera Rasool <mrasool@vmware.com>
Thu, 22 Jun 2023 07:56:31 +0000 (00:56 -0700)
committerMobashshera Rasool <mrasool@vmware.com>
Mon, 26 Jun 2023 14:45:30 +0000 (07:45 -0700)
commit7de521470f0f82db4bd0cfcbe45761b909934639
treeb03ca24c2764fcc78b42a90a033be6825dd37ae9
parent4262dc3bd8d5407dd7af0701fadfb14bbcfbd7ea
pim6d: MLD conformance querier-non-querier transition fix

Problem:
ANVL Conformance test case 7.31 failed because DUT after
receiving MLD Done msg and a query message with lower adddress,
DUT did not keep on sending the group specific queries since it moved
to non-querier state.

As per RFC 2710 s4 p7, DUT is supposed to keep sending the group
specific queries until either it receives the membership report or
there is no response even after last member query is sent.

Fix:
Whenever group specific queries are sent out we are checking if
the self node is querier, if not it does not sends this query out.
This check is preventing the continuation of the last queries
which must be sent out although the self node is not the querier.
Hence removing the check from the api gm_trigger_specific_query
and adding in the caller to make sure this event is only added
for queriers. This will make sure the last member queries are sent out
even during the transition phase.
Also earlier this event was getting added for non-querier
as well which is redundant since queries were not required to be sent
out by non-queriers.

Issue: #13539

Signed-off-by: Mobashshera Rasool <mrasool@vmware.com>
pimd/pim6_mld.c