diff options
| author | Nathan Bahr <nbahr@atcorp.com> | 2024-10-30 21:21:50 +0000 |
|---|---|---|
| committer | Nathan Bahr <nbahr@atcorp.com> | 2025-01-09 21:58:22 +0000 |
| commit | e8d81ab5ce04237ddc28ac0dc4b29e49dd2a1979 (patch) | |
| tree | 376ea42105e3924333bb7005ca6dcb8fd3cf309e /pimd/pim_instance.h | |
| parent | 8b00575fbb358bc214a9281c948cb0d703aa7605 (diff) | |
pimd: Implement rpf lookup mode as a list
Add the support to store lookup modes as a sorted list.
List is non-unique and sorts mode with both lists < modes with one list < global mode (no lists).
This way, when finding the right mode, we will match a lookup using a prefix list before the global mode.
Add passing group address into all lookups (using nht cache and/or synchronous lookup).
Many areas don't have a group address, use PIMADDR_ANY if no valid group is needed.
Signed-off-by: Nathan Bahr <nbahr@atcorp.com>
Diffstat (limited to 'pimd/pim_instance.h')
| -rw-r--r-- | pimd/pim_instance.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/pimd/pim_instance.h b/pimd/pim_instance.h index 7f022111bc..7aa9d857d4 100644 --- a/pimd/pim_instance.h +++ b/pimd/pim_instance.h @@ -18,6 +18,7 @@ #include "pim_upstream.h" #include "pim_mroute.h" #include "pim_autorp.h" +#include "pim_nht.h" enum pim_spt_switchover { PIM_SPT_IMMEDIATE, @@ -116,7 +117,7 @@ struct pim_instance { char *register_plist; struct hash *nht_hash; - enum pim_rpf_lookup_mode rpf_mode; + struct pim_lookup_mode_head rpf_mode; void *ssm_info; /* per-vrf SSM configuration */ |
