summaryrefslogtreecommitdiff
path: root/pimd/pim_zebra.c
diff options
context:
space:
mode:
Diffstat (limited to 'pimd/pim_zebra.c')
-rw-r--r--pimd/pim_zebra.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/pimd/pim_zebra.c b/pimd/pim_zebra.c
index ad4ef64eda..3ff0d38185 100644
--- a/pimd/pim_zebra.c
+++ b/pimd/pim_zebra.c
@@ -382,6 +382,13 @@ static void scan_upstream_rpf_cache()
continue;
if (rpf_result == PIM_RPF_CHANGED) {
+ struct pim_neighbor *nbr;
+
+ nbr = pim_neighbor_find (old.source_nexthop.interface,
+ old.rpf_addr.u.prefix4);
+ if (nbr)
+ pim_jp_agg_remove_group (nbr->upstream_jp_agg, up);
+
/*
* We have detected a case where we might need to rescan
* the inherited o_list so do it.