summaryrefslogtreecommitdiff
path: root/pimd/pim_rpf.h
diff options
context:
space:
mode:
Diffstat (limited to 'pimd/pim_rpf.h')
-rw-r--r--pimd/pim_rpf.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/pimd/pim_rpf.h b/pimd/pim_rpf.h
index 7dae53f8fc..6ff4d87b55 100644
--- a/pimd/pim_rpf.h
+++ b/pimd/pim_rpf.h
@@ -41,6 +41,17 @@ struct pim_rpf {
enum pim_rpf_result { PIM_RPF_OK = 0, PIM_RPF_CHANGED, PIM_RPF_FAILURE };
+/* RPF lookup behaviour */
+enum pim_rpf_lookup_mode {
+ MCAST_NO_CONFIG = 0, /* MIX_MRIB_FIRST, but no show in config write */
+ MCAST_MRIB_ONLY, /* MRIB only */
+ MCAST_URIB_ONLY, /* URIB only */
+ MCAST_MIX_MRIB_FIRST, /* MRIB, if nothing at all then URIB */
+ MCAST_MIX_DISTANCE, /* MRIB & URIB, lower distance wins */
+ MCAST_MIX_PFXLEN, /* MRIB & URIB, longer prefix wins */
+ /* on equal value, MRIB wins for last 2 */
+};
+
struct pim_upstream;
unsigned int pim_rpf_hash_key(const void *arg);