diff options
author | Nathan Bahr <nbahr@atcorp.com> | 2024-10-23 21:00:31 +0200 |
---|---|---|
committer | Nathan Bahr <nbahr@atcorp.com> | 2024-12-13 18:36:34 +0100 |
commit | 6d30c8f6b53a7d453f455e28615a57a6aadc0660 (patch) | |
tree | bb65b88b096b170b9fb757f2c797ce5174c9b8a1 /pimd/pim_msdp.c | |
parent | pimd: Refactor synchronous nexthop lookup (diff) | |
download | frr-6d30c8f6b53a7d453f455e28615a57a6aadc0660.tar.xz frr-6d30c8f6b53a7d453f455e28615a57a6aadc0660.zip |
pimd: Refactor pim NHT
Refactor the next hop tracking in PIM to fully support the configured RPF lookup mode.
Moved many NHT related functions to pim_nht.h/c
NHT now tracks both MRIB and URIB tables and makes nexthop decisions based on the configured lookup mode.
Signed-off-by: Nathan Bahr <nbahr@atcorp.com>
Diffstat (limited to 'pimd/pim_msdp.c')
-rw-r--r-- | pimd/pim_msdp.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/pimd/pim_msdp.c b/pimd/pim_msdp.c index f5260c68c..e9c8840cc 100644 --- a/pimd/pim_msdp.c +++ b/pimd/pim_msdp.c @@ -26,6 +26,7 @@ #include "pim_time.h" #include "pim_upstream.h" #include "pim_oil.h" +#include "pim_nht.h" #include "pim_msdp.h" #include "pim_msdp_packet.h" @@ -691,7 +692,7 @@ bool pim_msdp_peer_rpf_check(struct pim_msdp_peer *mp, struct in_addr rp) } /* check if the MSDP peer is the nexthop for the RP */ - if (pim_nexthop_lookup(mp->pim, &nexthop, rp, 0) && + if (pim_nht_lookup(mp->pim, &nexthop, rp, 0) && nexthop.mrib_nexthop_addr.s_addr == mp->peer.s_addr) { return true; } |