summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDonald Sharp <donaldsharp72@gmail.com>2024-07-26 07:33:36 -0400
committerGitHub <noreply@github.com>2024-07-26 07:33:36 -0400
commite77bd737f4b7da147ddd1b3eeb941592adc34530 (patch)
tree131340789006b841c142cd023b80003416fe314a
parentabb2891870746d133108cbe854448abd1e414745 (diff)
parent32495732208bbc5d6bdfbb6ad1af1ab94a2f0964 (diff)
Merge pull request #16477 from FRRouting/mergify/bp/stable/10.0/pr-16472
pimd: Fix msdp setting of sa->rp (backport #16472)
-rw-r--r--pimd/pim_msdp.c8
-rwxr-xr-xtests/topotests/msdp_topo1/test_msdp_topo1.py4
2 files changed, 5 insertions, 7 deletions
diff --git a/pimd/pim_msdp.c b/pimd/pim_msdp.c
index 623c14bb03..ea8c84cca5 100644
--- a/pimd/pim_msdp.c
+++ b/pimd/pim_msdp.c
@@ -411,12 +411,10 @@ void pim_msdp_sa_ref(struct pim_instance *pim, struct pim_msdp_peer *mp,
pim_addr_to_prefix(&grp, sa->sg.grp);
rp_info = pim_rp_find_match_group(pim, &grp);
if (rp_info) {
- sa->rp = rp_info->rp.rpf_addr;
- } else
- {
- sa->rp = pim->msdp.originator_id;
+ sa->rp = rp_info->rp.rpf_addr;
+ } else {
+ sa->rp = pim->msdp.originator_id;
}
- sa->rp = pim->msdp.originator_id;
pim_msdp_pkt_sa_tx_one(sa);
}
sa->flags &= ~PIM_MSDP_SAF_STALE;
diff --git a/tests/topotests/msdp_topo1/test_msdp_topo1.py b/tests/topotests/msdp_topo1/test_msdp_topo1.py
index 1af58b0a01..2fbff440f5 100755
--- a/tests/topotests/msdp_topo1/test_msdp_topo1.py
+++ b/tests/topotests/msdp_topo1/test_msdp_topo1.py
@@ -359,7 +359,7 @@ def test_msdp():
"192.168.10.100": {
"source": "192.168.10.100",
"group": "229.1.2.3",
- "rp": "192.168.1.1",
+ "rp": "10.254.254.1",
"local": "no",
"sptSetup": "no",
}
@@ -394,7 +394,7 @@ def test_msdp():
"192.168.10.100": {
"source": "192.168.10.100",
"group": "229.1.2.3",
- "rp": "192.168.1.1",
+ "rp": "10.254.254.1",
"local": "no",
"sptSetup": "yes",
}