Support IETF routing Yang models (VPP-503).
[vpp.git] / vnet / vnet / ip / ip.h
index e47512a..c5882c5 100644 (file)
@@ -42,6 +42,7 @@
 
 #include <vppinfra/hash.h>
 #include <vppinfra/heap.h>             /* adjacency heap */
+#include <vppinfra/ptclosure.h>
 
 #include <vnet/vnet.h>
 
 #include <vnet/ip/ip4.h>
 #include <vnet/ip/ip4_error.h>
 #include <vnet/ip/ip4_packet.h>
+#include <vnet/ip/icmp4.h>
 
 #include <vnet/ip/ip6.h>
 #include <vnet/ip/ip6_packet.h>
 #include <vnet/ip/ip6_error.h>
 #include <vnet/ip/icmp6.h>
 
-#include <vnet/ip/tcp.h>
-
 #if DPDK > 0
 #include <vnet/devices/dpdk/dpdk.h>
 #endif
 
 #include <vnet/classify/vnet_classify.h>
 
-typedef union {
-  ip4_address_t ip4;
-  ip6_address_t ip6;
-} ip46_address_t;
-
 /* Per protocol info. */
 typedef struct {
   /* Protocol name (also used as hash key). */
@@ -163,7 +158,7 @@ ip_incremental_checksum_buffer (vlib_main_t * vm, vlib_buffer_t * first_buffer,
 #if DPDK > 0
 {
   u32 n_bytes_left = n_bytes_to_checksum;
-  struct rte_mbuf * mb = ((struct rte_mbuf *)first_buffer)-1;
+  struct rte_mbuf * mb = rte_mbuf_from_vlib_buffer(first_buffer);
   u8 nb_segs = mb->nb_segs;
   ASSERT(mb->data_len >= first_buffer_offset);
   void * h;
@@ -219,4 +214,13 @@ ip_incremental_checksum_buffer (vlib_main_t * vm, vlib_buffer_t * first_buffer,
 
 void ip_del_all_interface_addresses (vlib_main_t *vm, u32 sw_if_index);
 
+extern vlib_node_registration_t ip4_inacl_node;
+extern vlib_node_registration_t ip6_inacl_node;
+
+void
+vnet_config_update_tx_feature_count (ip_lookup_main_t * lm, 
+                                     ip_config_main_t * tx_cm, 
+                                     u32 sw_if_index, 
+                                     int is_add);
+
 #endif /* included_ip_main_h */