diff options
| author | Donald Sharp <sharpd@cumulusnetworks.com> | 2016-11-29 08:47:40 -0500 |
|---|---|---|
| committer | Donald Sharp <sharpd@cumulusnetworks.com> | 2016-12-21 20:26:17 -0500 |
| commit | da3dcffb66615560647abd9a3825d24822571bdd (patch) | |
| tree | c315c8e83d1dbff23d9f8bd9c02a75d933ff9bfb | |
| parent | a04da05a5397f5397faaa70165735f2447e4a6cc (diff) | |
pimd: Add more RP rescan points
When we add in or delete ip addresses from an interface
we may need to rescan the rp's that we know of to make
sure that they are still available.
Ticket: CM-12623
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
Reviewed-by: Don Slice <dslice@cumulusnetworks.com>
| -rw-r--r-- | pimd/pim_iface.c | 4 | ||||
| -rw-r--r-- | pimd/pim_zebra.c | 1 |
2 files changed, 4 insertions, 1 deletions
diff --git a/pimd/pim_iface.c b/pimd/pim_iface.c index b5f1fadca5..0a104acef1 100644 --- a/pimd/pim_iface.c +++ b/pimd/pim_iface.c @@ -715,7 +715,7 @@ void pim_if_addr_add_all(struct interface *ifp) } } /* pim */ } - + pim_rp_setup(); pim_rp_check_on_if_add(pim_ifp); } @@ -737,6 +737,8 @@ void pim_if_addr_del_all(struct interface *ifp) pim_if_addr_del(ifc, 1 /* force_prim_as_any=true */); } + + pim_rp_setup(); pim_i_am_rp_re_evaluate(); } diff --git a/pimd/pim_zebra.c b/pimd/pim_zebra.c index 9239f875c4..44b92a8c0b 100644 --- a/pimd/pim_zebra.c +++ b/pimd/pim_zebra.c @@ -348,6 +348,7 @@ static int pim_zebra_if_address_del(int command, struct zclient *client, } pim_if_addr_del(c, 0); + pim_rp_setup(); pim_i_am_rp_re_evaluate(); return 0; |
