diff options
author | Donald Sharp <sharpd@cumulusnetworks.com> | 2020-05-21 14:08:29 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-05-21 14:08:29 +0200 |
commit | 737d73e519b9abfba70fbe4b033e55e135fb776d (patch) | |
tree | a120024837ec0240da0fa78c16869bbcaf9bf2a6 /pimd/pim_ifchannel.c | |
parent | Merge pull request #6321 from ton31337/fix/configuration_for_labeled_in_place (diff) | |
parent | pimd: Prune->noinfo state has to put off join expiry timer and delete ifchannel (diff) | |
download | frr-737d73e519b9abfba70fbe4b033e55e135fb776d.tar.xz frr-737d73e519b9abfba70fbe4b033e55e135fb776d.zip |
Merge pull request #6056 from sarav511/jpexp
pimd: Prune->noinfo state has to put off join expiry timer and delete ifchannel
Diffstat (limited to 'pimd/pim_ifchannel.c')
-rw-r--r-- | pimd/pim_ifchannel.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/pimd/pim_ifchannel.c b/pimd/pim_ifchannel.c index 70e06ccc4..89fd2bd21 100644 --- a/pimd/pim_ifchannel.c +++ b/pimd/pim_ifchannel.c @@ -943,10 +943,13 @@ void pim_ifchannel_join_add(struct interface *ifp, struct in_addr neigh_addr, THREAD_OFF(ch->t_ifjoin_expiry_timer); break; case PIM_IFJOIN_PRUNE: - if (source_flags & PIM_ENCODE_RPT_BIT) + if (source_flags & PIM_ENCODE_RPT_BIT) { pim_ifchannel_ifjoin_switch(__func__, ch, PIM_IFJOIN_NOINFO); - else + THREAD_OFF(ch->t_ifjoin_expiry_timer); + delete_on_noinfo(ch); + return; + } else pim_ifchannel_ifjoin_handler(ch, pim_ifp); break; case PIM_IFJOIN_PRUNE_PENDING: |