summaryrefslogtreecommitdiffstats
path: root/vnet/vnet/ip/lookup.h
diff options
context:
space:
mode:
Diffstat (limited to 'vnet/vnet/ip/lookup.h')
-rw-r--r--vnet/vnet/ip/lookup.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/vnet/vnet/ip/lookup.h b/vnet/vnet/ip/lookup.h
index 2b682d27195..fcd080a4375 100644
--- a/vnet/vnet/ip/lookup.h
+++ b/vnet/vnet/ip/lookup.h
@@ -408,6 +408,12 @@ typedef struct ip_lookup_main_t {
/** Adjacency by signature hash */
uword * adj_index_by_signature;
+ /** any-tx-feature-enabled interface bitmap */
+ uword * tx_sw_if_has_ip_output_features;
+
+ /** count of enabled features, per sw_if_index, to maintain bitmap */
+ i16 * tx_feature_count_by_sw_if_index;
+
/** Temporary vectors for looking up next hops in hash. */
ip_multipath_next_hop_t * next_hop_hash_lookup_key;
ip_multipath_next_hop_t * next_hop_hash_lookup_key_normalized;
@@ -444,8 +450,8 @@ typedef struct ip_lookup_main_t {
/** First table index to use for this interface, ~0 => none */
u32 * classify_table_index_by_sw_if_index;
- /** rx/tx interface/feature configuration. */
- ip_config_main_t rx_config_mains[VNET_N_CAST], tx_config_main;
+ /** rx unicast, multicast, tx interface/feature configuration. */
+ ip_config_main_t feature_config_mains[VNET_N_IP_FEAT];
/** Number of bytes in a fib result. Must be at least
sizeof (uword). First word is always adjacency index. */