summaryrefslogtreecommitdiffstats
path: root/pimd/pim_zebra.c
diff options
context:
space:
mode:
authorAnuradha Karuppiah <anuradhak@cumulusnetworks.com>2019-11-15 20:41:49 +0100
committerAnuradha Karuppiah <anuradhak@cumulusnetworks.com>2019-11-15 23:16:08 +0100
commitdb431af290a3ce4f8653f6cf4bd3cb66a38163dc (patch)
tree8ed6695d8bc37a4616a7e1da215336224b7e60cf /pimd/pim_zebra.c
parentpimd: insert upstream entry into nbr's jp-agg list when a new nbr is added (diff)
downloadfrr-db431af290a3ce4f8653f6cf4bd3cb66a38163dc.tar.xz
frr-db431af290a3ce4f8653f6cf4bd3cb66a38163dc.zip
pimd: handle RPF resolution while in joined state
If an dummy upstream entry (no RPF nbr) which is already in a JOINED state is resolved we were not triggering an immediate join via the per-interface upstream switch list. Signed-off-by: Anuradha Karuppiah <anuradhak@cumulusnetworks.com>
Diffstat (limited to 'pimd/pim_zebra.c')
-rw-r--r--pimd/pim_zebra.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/pimd/pim_zebra.c b/pimd/pim_zebra.c
index b6847a273..dcc0f0842 100644
--- a/pimd/pim_zebra.c
+++ b/pimd/pim_zebra.c
@@ -324,6 +324,9 @@ void pim_zebra_upstream_rpf_changed(struct pim_instance *pim,
up->channel_oil->oil_inherited_rescan = 0;
}
+ if (up->join_state == PIM_UPSTREAM_JOINED)
+ pim_jp_agg_switch_interface(old, &up->rpf, up);
+
if (!up->channel_oil->installed)
pim_upstream_mroute_add(up->channel_oil,
__PRETTY_FUNCTION__);