diff options
| author | Donald Sharp <sharpd@cumulusnetworks.com> | 2017-03-16 08:38:03 -0400 |
|---|---|---|
| committer | Donald Sharp <sharpd@cumulusnetworks.com> | 2017-03-16 18:59:28 -0400 |
| commit | cb35003fdca20dfd12e260891acc8d0ceef5c03e (patch) | |
| tree | 92b117eaea6ea06f78a9c30f9a22621949497a26 /pimd/pim_nht.c | |
| parent | ce2b6ce0984a6a0c7dbfccafeb1b440128f5c878 (diff) | |
pimd: When the RPF is changed remove the group
When changing the RPF cleanup the old entry
in the J/P Agg neighbor list.
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Diffstat (limited to 'pimd/pim_nht.c')
| -rw-r--r-- | pimd/pim_nht.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/pimd/pim_nht.c b/pimd/pim_nht.c index c8cc187305..5fc5d08d16 100644 --- a/pimd/pim_nht.c +++ b/pimd/pim_nht.c @@ -370,6 +370,12 @@ pim_update_upstream_nh (struct pim_nexthop_cache *pnc) 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 |
