ip: add support for buffer offload metadata in ip midchain
[vpp.git] / src / vnet / ip / ip4.h
index 22de22f..45d07c2 100644 (file)
@@ -111,9 +111,6 @@ typedef struct ip4_main_t
   /** Vector of FIBs. */
   struct fib_table_t_ *fibs;
 
-  /** Vector of MTries. */
-  struct ip4_fib_t_ *v4_fibs;
-
   /** Vector of MFIBs. */
   struct mfib_table_t_ *mfibs;
 
@@ -164,13 +161,14 @@ typedef struct ip4_main_t
 
     u8 pad[2];
   } host_config;
+
+  u16 msg_id_base;
 } ip4_main_t;
 
 #define ARP_THROTTLE_BITS      (512)
 
 /** Global ip4 main structure. */
 extern ip4_main_t ip4_main;
-extern char *ip4_error_strings[];
 
 /** Global ip4 input node.  Errors get attached to ip4 input node. */
 extern vlib_node_registration_t ip4_input_node;
@@ -201,26 +199,6 @@ ip4_destination_matches_interface (ip4_main_t * im,
   return ip4_destination_matches_route (im, key, a, ia->address_length);
 }
 
-always_inline int
-ip4_src_address_for_packet (ip_lookup_main_t * lm,
-                           u32 sw_if_index, ip4_address_t * src)
-{
-  u32 if_add_index = lm->if_address_pool_index_by_sw_if_index[sw_if_index];
-  if (PREDICT_TRUE (if_add_index != ~0))
-    {
-      ip_interface_address_t *if_add =
-       pool_elt_at_index (lm->if_address_pool, if_add_index);
-      ip4_address_t *if_ip = ip_interface_address_get_address (lm, if_add);
-      *src = *if_ip;
-      return 0;
-    }
-  else
-    {
-      src->as_u32 = 0;
-    }
-  return (!0);
-}
-
 /* Find interface address which matches destination. */
 always_inline ip4_address_t *
 ip4_interface_address_matching_destination (ip4_main_t * im,
@@ -233,7 +211,6 @@ ip4_interface_address_matching_destination (ip4_main_t * im,
   ip_interface_address_t *ia;
   ip4_address_t *result = 0;
 
-  /* *INDENT-OFF* */
   foreach_ip_interface_address (lm, ia, sw_if_index,
                                 1 /* honor unnumbered */,
   ({
@@ -244,7 +221,6 @@ ip4_interface_address_matching_destination (ip4_main_t * im,
        break;
       }
   }));
-  /* *INDENT-ON* */
   if (result_ia)
     *result_ia = result ? ia : 0;
   return result;
@@ -277,18 +253,13 @@ void ip4_unregister_protocol (u32 protocolx);
 
 serialize_function_t serialize_vnet_ip4_main, unserialize_vnet_ip4_main;
 
-int vnet_set_ip4_flow_hash (u32 table_id,
-                           flow_hash_config_t flow_hash_config);
-
 int vnet_set_ip4_classify_intfc (vlib_main_t * vm, u32 sw_if_index,
                                 u32 table_index);
 
 void ip4_punt_policer_add_del (u8 is_add, u32 policer_index);
 
-void ip4_punt_redirect_add (u32 rx_sw_if_index,
-                           u32 tx_sw_if_index, ip46_address_t * nh);
 void ip4_punt_redirect_add_paths (u32 rx_sw_if_index,
-                                 fib_route_path_t * paths);
+                                 const fib_route_path_t *paths);
 
 void ip4_punt_redirect_del (u32 rx_sw_if_index);