summaryrefslogtreecommitdiffstats
path: root/pimd/pim_rp.c
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@cumulusnetworks.com>2016-11-29 14:14:35 +0100
committerDonald Sharp <sharpd@cumulusnetworks.com>2016-12-22 02:26:17 +0100
commita04da05a5397f5397faaa70165735f2447e4a6cc (patch)
tree7874024b9dd5e713c090a1e828e9123d55ee0594 /pimd/pim_rp.c
parentpimd: When specifying 224.0.0.0/4 as the RP group inform msdp (diff)
downloadfrr-a04da05a5397f5397faaa70165735f2447e4a6cc.tar.xz
frr-a04da05a5397f5397faaa70165735f2447e4a6cc.zip
pimd: Only check to see if current rp is 'right' or not.
When a new rp is entered, pim is looking at all rp's and failing the check if any of the RP's have no path to the RP, instead of the one that was just entered being wrong. Ticket: CM-12623 Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com> Reviewed-by: Don Slice <dslice@cumulusnetworks.com>
Diffstat (limited to '')
-rw-r--r--pimd/pim_rp.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/pimd/pim_rp.c b/pimd/pim_rp.c
index 98339ee09..ba464e98c 100644
--- a/pimd/pim_rp.c
+++ b/pimd/pim_rp.c
@@ -400,7 +400,7 @@ pim_rp_new (const char *rp, const char *group_range, const char *plist)
rp_all->rp.rpf_addr = rp_info->rp.rpf_addr;
XFREE (MTYPE_PIM_RP, rp_info);
- if (!pim_rp_setup ())
+ if (pim_nexthop_lookup (&rp_all->rp.source_nexthop, rp_all->rp.rpf_addr.u.prefix4, 1) != 0)
return PIM_RP_NO_PATH;
pim_rp_check_interfaces (rp_all);
@@ -447,7 +447,7 @@ pim_rp_new (const char *rp, const char *group_range, const char *plist)
listnode_add_sort (qpim_rp_list, rp_info);
- if (!pim_rp_setup ())
+ if (pim_nexthop_lookup (&rp_info->rp.source_nexthop, rp_info->rp.rpf_addr.u.prefix4, 1) != 0)
return PIM_RP_NO_PATH;
pim_rp_check_interfaces (rp_info);