summaryrefslogtreecommitdiffstats
path: root/pimd/pim_autorp.c
diff options
context:
space:
mode:
authorNathan Bahr <nbahr@atcorp.com>2024-10-22 17:32:52 +0200
committerNathan Bahr <nbahr@atcorp.com>2024-10-23 21:10:47 +0200
commit433fce647c550a309a0869fbd499b0f3a12da551 (patch)
treebe99003ace4636a9b238fe13593184c28b0d135b /pimd/pim_autorp.c
parentMerge pull request #17162 from louis-6wind/fix-bh-nh-vrf (diff)
downloadfrr-433fce647c550a309a0869fbd499b0f3a12da551.tar.xz
frr-433fce647c550a309a0869fbd499b0f3a12da551.zip
pimd: PIM autorp no path RP fix
Just because there is currently no path to the RP doesn't mean it failed to add. Signed-off-by: Nathan Bahr <nbahr@atcorp.com>
Diffstat (limited to '')
-rw-r--r--pimd/pim_autorp.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/pimd/pim_autorp.c b/pimd/pim_autorp.c
index 3fc30347a..d36b792e3 100644
--- a/pimd/pim_autorp.c
+++ b/pimd/pim_autorp.c
@@ -241,8 +241,11 @@ static bool pim_autorp_add_rp(struct pim_autorp *autorp, pim_addr rpaddr,
{
struct pim_autorp_rp *rp;
struct pim_autorp_rp *trp = NULL;
+ int ret;
- if (pim_rp_new(autorp->pim, rpaddr, grp, listname, RP_SRC_AUTORP)) {
+ ret = pim_rp_new(autorp->pim, rpaddr, grp, listname, RP_SRC_AUTORP);
+ /* There may not be a path to the RP right now, but that doesn't mean it failed to add the RP */
+ if (ret != PIM_SUCCESS && ret != PIM_RP_NO_PATH) {
zlog_err("%s: Failed to add new RP addr=%pI4, grp=%pFX, grplist=%s",
__func__, &rpaddr, &grp,
(listname ? listname : "NONE"));