]> git.puffer.fish Git - matthieu/frr.git/commit
pimd: clear upstream rpf information when RP becomes not reachable
authorSarita Patra <saritap@vmware.com>
Fri, 22 Feb 2019 15:29:24 +0000 (07:29 -0800)
committerSarita Patra <saritap@vmware.com>
Mon, 25 Feb 2019 07:27:08 +0000 (23:27 -0800)
commit1250cb5df29b7ac663fc57ee75ec18899cb6e608
tree1c8785c1a7e2cedc6faddf283ea49871a97aafdc
parent640b8d93abcddc6634ed778a9e669639a53b9b0b
pimd: clear upstream rpf information when RP becomes not reachable

When route to RP gets modified, FRR receives a notification from
zebra, and call the function pim_resolve_upstream_nh() to compute the
nexthop and update upstream->rpf structure.
Issue: In case when RP becomes not reachable, FRR only uninstall
the mroute from the kernal, but not update the upstream->rpf structure.

Fix: When FRR receives a notification from zebra saying RP becomes
not reachable, then update the following fields.
1. update channel_oil incoming interface as MAXVIFS
2. Un-install the mroute from the kernel.
3. Switch upstream state from JOINED to NOTJOINED.
4. Clear the nexthop information of the upstream.

Signed-off-by: Sarita Patra <saritap@vmware.com>
pimd/pim_nht.c
pimd/pim_rpf.c
pimd/pim_rpf.h
pimd/pim_upstream.c
pimd/pim_zebra.c