#define MBUF_SIZE (2048 + sizeof(struct rte_mbuf) + RTE_PKTMBUF_HEADROOM)
#define NB_MBUF (32<<10)
-vnet_device_class_t dpdk_device_class;
+extern vnet_device_class_t dpdk_device_class;
extern vlib_node_registration_t dpdk_input_node;
extern vlib_node_registration_t dpdk_io_input_node;
extern vlib_node_registration_t handoff_dispatch_node;
#include <ssvm.h>
-vnet_device_class_t ssvm_eth_device_class;
+extern vnet_device_class_t ssvm_eth_device_class;
extern vlib_node_registration_t ssvm_eth_input_node;
#define SSVM_BUFFER_SIZE \
u8 address[6];
} ethernet_interface_t;
-vnet_hw_interface_class_t ethernet_hw_interface_class;
+extern vnet_hw_interface_class_t ethernet_hw_interface_class;
typedef struct {
/* Name (a c string). */
flow_report_main_t flow_report_main;
-vlib_node_registration_t flow_report_process_node;
+extern vlib_node_registration_t flow_report_process_node;
int vnet_flow_report_enable_disable (u32 sw_if_index, u32 table_index,
int enable_disable);
#include <vnet/pg/pg.h>
#include <vnet/ip/format.h>
-vnet_hw_interface_class_t gre_hw_interface_class;
+extern vnet_hw_interface_class_t gre_hw_interface_class;
typedef enum {
#define gre_error(n,s) GRE_ERROR_##n,
format_function_t format_gre_header_with_length;
extern vlib_node_registration_t gre_input_node;
-vnet_device_class_t gre_device_class;
+extern vnet_device_class_t gre_device_class;
/* Parse gre protocol as 0xXXXX or protocol name.
In either host or network byte order. */
#include <vnet/hdlc/packet.h>
#include <vnet/pg/pg.h>
-vnet_hw_interface_class_t hdlc_hw_interface_class;
+extern vnet_hw_interface_class_t hdlc_hw_interface_class;
typedef enum {
#define hdlc_error(n,s) HDLC_ERROR_##n,
#define IP4_FRAG_NODE_NAME "ip4-frag"
#define IP6_FRAG_NODE_NAME "ip6-frag"
-vlib_node_registration_t ip4_frag_node;
-vlib_node_registration_t ip6_frag_node;
+extern vlib_node_registration_t ip4_frag_node;
+extern vlib_node_registration_t ip6_frag_node;
typedef enum {
IP4_FRAG_NEXT_IP4_LOOKUP,
mpls_unicast_header_t labels[0]; /* 4 bytes each */
}) ip4_gre_and_mpls_header_t;
-vnet_hw_interface_class_t mpls_gre_hw_interface_class;
+extern vnet_hw_interface_class_t mpls_gre_hw_interface_class;
typedef enum {
#define mpls_error(n,s) MPLS_ERROR_##n,
extern vlib_node_registration_t mpls_input_node;
extern vlib_node_registration_t mpls_policy_encap_node;
-vnet_device_class_t mpls_gre_device_class;
+extern vnet_device_class_t mpls_gre_device_class;
/* Parse mpls protocol as 0xXXXX or protocol name.
In either host or network byte order. */
#include <vnet/ppp/packet.h>
#include <vnet/pg/pg.h>
-vnet_hw_interface_class_t ppp_hw_interface_class;
+extern vnet_hw_interface_class_t ppp_hw_interface_class;
typedef enum {
#define ppp_error(n,s) PPP_ERROR_##n,
always_inline u32 u8x16_compare_byte_mask (u8x16 x)
{ return _mm_movemask_epi8 ((__m128i) x); }
-u8 u32x4_compare_word_mask_table[256];
+extern u8 u32x4_compare_word_mask_table[256];
always_inline u32 u32x4_compare_word_mask (u32x4 x)
{