ip: use IPv6 flowlabel in flow hash computation
[vpp.git] / src / vnet / vnet.h
index 8405f61..be680a7 100644 (file)
 #ifndef included_vnet_vnet_h
 #define included_vnet_vnet_h
 
+#include <stddef.h>
+
 #include <vppinfra/types.h>
 
-#include <vnet/unix/pcap.h>
+#include <vppinfra/pcap.h>
 #include <vnet/buffer.h>
 #include <vnet/config.h>
 #include <vnet/interface.h>
 #include <vnet/api_errno.h>
 
+/* ip table add delete callback */
+typedef struct _vnet_ip_table_function_list_elt
+{
+  struct _vnet_ip_table_function_list_elt *next_ip_table_function;
+  clib_error_t *(*fp) (struct vnet_main_t * vnm, u32 table_id, u32 flags);
+} _vnet_ip_table_function_list_elt_t;
+
 typedef struct vnet_main_t
 {
   u32 local_interface_hw_if_index;
@@ -66,9 +75,14 @@ typedef struct vnet_main_t
     * sw_interface_add_del_functions[VNET_ITF_FUNC_N_PRIO];
     _vnet_interface_function_list_elt_t
     * sw_interface_admin_up_down_functions[VNET_ITF_FUNC_N_PRIO];
+    _vnet_interface_function_list_elt_t
+    * sw_interface_mtu_change_functions[VNET_ITF_FUNC_N_PRIO];
 
   uword *interface_tag_by_sw_if_index;
 
+    _vnet_ip_table_function_list_elt_t
+    * ip_table_add_del_functions[VNET_ITF_FUNC_N_PRIO];
+
   /*
    * Last "api" error, preserved so we can issue reasonable diagnostics
    * at or near the top of the food chain
@@ -78,8 +92,7 @@ typedef struct vnet_main_t
   vlib_main_t *vlib_main;
 } vnet_main_t;
 
-vnet_main_t vnet_main;
-vnet_main_t **vnet_mains;
+extern vnet_main_t vnet_main;
 
 #include <vnet/interface_funcs.h>
 #include <vnet/global_funcs.h>