From 689b9f10fc33387414c8077cd8cacd2eb2fc7198 Mon Sep 17 00:00:00 2001 From: Sarita Patra Date: Tue, 18 Oct 2022 17:32:11 -0700 Subject: [PATCH] pimd, pim6d: Fix pim upstream rpf change When upstream RPF address is secondary, and neighborship is built with primary address, then pim_neighbor_find() fails, due to which when there is upstream change it wont send prune. Verify the nexthop is present in the neighbor primary and secondary address list. Signed-off-by: Sarita Patra --- pimd/pim_zebra.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pimd/pim_zebra.c b/pimd/pim_zebra.c index e39eca7a2c..29aac7f1c7 100644 --- a/pimd/pim_zebra.c +++ b/pimd/pim_zebra.c @@ -257,7 +257,8 @@ void pim_zebra_upstream_rpf_changed(struct pim_instance *pim, struct pim_neighbor *nbr; nbr = pim_neighbor_find(old->source_nexthop.interface, - old->rpf_addr); + old->rpf_addr, true); + if (nbr) pim_jp_agg_remove_group(nbr->upstream_jp_agg, up, nbr); -- 2.39.5