VNET_LINK_MPLS,
VNET_LINK_ETHERNET,
VNET_LINK_ARP,
+ VNET_LINK_NSH,
} __attribute__ ((packed)) vnet_link_t;
#define VNET_LINKS { \
[VNET_LINK_IP6] = "ipv6", \
[VNET_LINK_MPLS] = "mpls", \
[VNET_LINK_ARP] = "arp", \
+ [VNET_LINK_NSH] = "nsh", \
}
/**
* @brief Number of link types. Not part of the enum so it does not have to be included in
* switch statements
*/
-#define VNET_LINK_NUM (VNET_LINK_ARP+1)
+#define VNET_LINK_NUM (VNET_LINK_NSH+1)
/**
* @brief Convert a link to to an Ethertype
#define VNET_HW_INTERFACE_BOND_INFO_NONE ((uword *) 0)
#define VNET_HW_INTERFACE_BOND_INFO_SLAVE ((uword *) ~0)
+ /* Input node */
+ u32 input_node_index;
+
+ /* input node cpu index by queue */
+ u32 *input_node_thread_index_by_queue;
+
} vnet_hw_interface_t;
extern vnet_device_class_t vnet_local_interface_device_class;
#define VNET_SW_INTERFACE_FLAG_BOND_SLAVE (1 << 4)
+/* Interface does not appear in CLI/API */
+#define VNET_SW_INTERFACE_FLAG_HIDDEN (1 << 5)
+
/* Index for this interface. */
u32 sw_if_index;