Code Review
/
vpp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
Initial GENEVE TUNNEL implementation and tests.
[vpp.git]
/
src
/
vnet
/
mfib
/
mfib_types.h
diff --git
a/src/vnet/mfib/mfib_types.h
b/src/vnet/mfib/mfib_types.h
index
37898a0
..
ec68c1a
100644
(file)
--- a/
src/vnet/mfib/mfib_types.h
+++ b/
src/vnet/mfib/mfib_types.h
@@
-68,6
+68,13
@@
typedef enum mfib_entry_attribute_t_
* Use with extreme caution
*/
MFIB_ENTRY_ACCEPT_ALL_ITF,
* Use with extreme caution
*/
MFIB_ENTRY_ACCEPT_ALL_ITF,
+ /**
+ * Exclusive - like its unicast counterpart. the source has provided
+ * the forwarding DPO directly. The entry therefore does not resolve
+ * paths via a path-list
+ */
+ MFIB_ENTRY_EXCLUSIVE,
+
MFIB_ENTRY_INHERIT_ACCEPT,
MFIB_ENTRY_ATTRIBUTE_LAST = MFIB_ENTRY_INHERIT_ACCEPT,
} mfib_entry_attribute_t;
MFIB_ENTRY_INHERIT_ACCEPT,
MFIB_ENTRY_ATTRIBUTE_LAST = MFIB_ENTRY_INHERIT_ACCEPT,
} mfib_entry_attribute_t;
@@
-83,6
+90,7
@@
typedef enum mfib_entry_attribute_t_
[MFIB_ENTRY_DROP] = "D", \
[MFIB_ENTRY_ACCEPT_ALL_ITF] = "AA", \
[MFIB_ENTRY_INHERIT_ACCEPT] = "IA", \
[MFIB_ENTRY_DROP] = "D", \
[MFIB_ENTRY_ACCEPT_ALL_ITF] = "AA", \
[MFIB_ENTRY_INHERIT_ACCEPT] = "IA", \
+ [MFIB_ENTRY_EXCLUSIVE] = "E", \
}
#define MFIB_ENTRY_NAMES_LONG { \
}
#define MFIB_ENTRY_NAMES_LONG { \
@@
-91,6
+99,7
@@
typedef enum mfib_entry_attribute_t_
[MFIB_ENTRY_DROP] = "Drop", \
[MFIB_ENTRY_ACCEPT_ALL_ITF] = "Accept-all-itf", \
[MFIB_ENTRY_INHERIT_ACCEPT] = "Inherit-Accept", \
[MFIB_ENTRY_DROP] = "Drop", \
[MFIB_ENTRY_ACCEPT_ALL_ITF] = "Accept-all-itf", \
[MFIB_ENTRY_INHERIT_ACCEPT] = "Inherit-Accept", \
+ [MFIB_ENTRY_EXCLUSIVE] = "Exclusive", \
}
typedef enum mfib_entry_flags_t_
}
typedef enum mfib_entry_flags_t_
@@
-99,8
+108,9
@@
typedef enum mfib_entry_flags_t_
MFIB_ENTRY_FLAG_SIGNAL = (1 << MFIB_ENTRY_SIGNAL),
MFIB_ENTRY_FLAG_DROP = (1 << MFIB_ENTRY_DROP),
MFIB_ENTRY_FLAG_CONNECTED = (1 << MFIB_ENTRY_CONNECTED),
MFIB_ENTRY_FLAG_SIGNAL = (1 << MFIB_ENTRY_SIGNAL),
MFIB_ENTRY_FLAG_DROP = (1 << MFIB_ENTRY_DROP),
MFIB_ENTRY_FLAG_CONNECTED = (1 << MFIB_ENTRY_CONNECTED),
- MFIB_ENTRY_FLAG_INHERIT_ACCEPT = (1 << MFIB_ENTRY_INHERIT_ACCEPT),
MFIB_ENTRY_FLAG_ACCEPT_ALL_ITF = (1 << MFIB_ENTRY_ACCEPT_ALL_ITF),
MFIB_ENTRY_FLAG_ACCEPT_ALL_ITF = (1 << MFIB_ENTRY_ACCEPT_ALL_ITF),
+ MFIB_ENTRY_FLAG_EXCLUSIVE = (1 << MFIB_ENTRY_EXCLUSIVE),
+ MFIB_ENTRY_FLAG_INHERIT_ACCEPT = (1 << MFIB_ENTRY_INHERIT_ACCEPT),
} mfib_entry_flags_t;
typedef enum mfib_itf_attribute_t_
} mfib_entry_flags_t;
typedef enum mfib_itf_attribute_t_
@@
-155,6
+165,11
@@
typedef enum mfib_source_t_
MFIB_SOURCE_CLI,
MFIB_SOURCE_VXLAN,
MFIB_SOURCE_DHCP,
MFIB_SOURCE_CLI,
MFIB_SOURCE_VXLAN,
MFIB_SOURCE_DHCP,
+ MFIB_SOURCE_SRv6,
+ MFIB_SOURCE_GTPU,
+ MFIB_SOURCE_VXLAN_GPE,
+ MFIB_SOURCE_RR,
+ MFIB_SOURCE_GENEVE,
MFIB_SOURCE_DEFAULT_ROUTE,
} mfib_source_t;
MFIB_SOURCE_DEFAULT_ROUTE,
} mfib_source_t;
@@
-164,9
+179,16
@@
typedef enum mfib_source_t_
[MFIB_SOURCE_CLI] = "CLI", \
[MFIB_SOURCE_DHCP] = "DHCP", \
[MFIB_SOURCE_VXLAN] = "VXLAN", \
[MFIB_SOURCE_CLI] = "CLI", \
[MFIB_SOURCE_DHCP] = "DHCP", \
[MFIB_SOURCE_VXLAN] = "VXLAN", \
+ [MFIB_SOURCE_SRv6] = "SRv6", \
+ [MFIB_SOURCE_GTPU] = "GTPU", \
+ [MFIB_SOURCE_VXLAN_GPE] = "VXLAN-GPE", \
+ [MFIB_SOURCE_RR] = "Recursive-resolution", \
+ [MFIB_SOURCE_GENEVE] = "Geneve", \
[MFIB_SOURCE_DEFAULT_ROUTE] = "Default Route", \
}
[MFIB_SOURCE_DEFAULT_ROUTE] = "Default Route", \
}
+#define MFIB_N_SOURCES (MFIB_SOURCE_DEFAULT_ROUTE)
+
/**
* \brief Compare two prefixes for equality
*/
/**
* \brief Compare two prefixes for equality
*/