} vnet_hw_interface_class_t;
/**
- * @brief Return a complete, zero-length (aka dummy) rewrite
+ * @brief Return a complete, zero-length (aka placeholder) rewrite
*/
extern u8 *default_build_rewrite (struct vnet_main_t *vnm,
u32 sw_if_index,
/* non-broadcast multiple access */
VNET_HW_INTERFACE_FLAG_NBMA = (1 << 19),
+
+ /* hw/driver can switch between l2-promisc and l3-dmac-filter modes */
+ VNET_HW_INTERFACE_FLAG_SUPPORTS_MAC_FILTER = (1 << 20),
} vnet_hw_interface_flags_t;
#define VNET_HW_INTERFACE_FLAG_DUPLEX_SHIFT 1
/* Hash table mapping sub interface id to sw_if_index. */
uword *sub_interface_sw_if_index_by_id;
- /* Count of number of L2 subinterfaces */
+ /* Count of number of L2 and L3 subinterfaces */
u32 l2_if_count;
+ u32 l3_if_count;
/* Bonded interface info -
0 - not a bonded interface nor a slave
u8 rx_enable;
u8 tx_enable;
u8 drop_enable;
+ u8 preallocate_data;
+ u8 free_data;
u32 sw_if_index;
int filter;
} vnet_pcap_dispatch_trace_args_t;