Coding standards cleanup for vnet/vnet/ip, VPP-255
[vpp.git] / vnet / vnet / ip / ip.h
index a0b4ea6..02a1a96 100644 (file)
@@ -41,7 +41,8 @@
 #define included_ip_main_h
 
 #include <vppinfra/hash.h>
-#include <vppinfra/heap.h>             /* adjacency heap */
+#include <vppinfra/heap.h>     /* adjacency heap */
+#include <vppinfra/ptclosure.h>
 
 #include <vnet/vnet.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 {
+typedef struct
+{
   /* Protocol name (also used as hash key). */
-  u8 * name;
+  u8 *name;
 
   /* Protocol number. */
   ip_protocol_t protocol;
 
   /* Format function for this IP protocol. */
-  format_function_t * format_header;
+  format_function_t *format_header;
 
   /* Parser for header. */
-  unformat_function_t * unformat_header;
+  unformat_function_t *unformat_header;
 
   /* Parser for per-protocol matches. */
-  unformat_function_t * unformat_match;
+  unformat_function_t *unformat_match;
 
   /* Parser for packet generator edits for this protocol. */
-  unformat_function_t * unformat_pg_edit;
+  unformat_function_t *unformat_pg_edit;
 } ip_protocol_info_t;
 
 /* Per TCP/UDP port info. */
-typedef struct {
+typedef struct
+{
   /* Port name (used as hash key). */
-  u8 * name;
+  u8 *name;
 
   /* UDP/TCP port number in network byte order. */
   u16 port;
 
   /* Port specific format function. */
-  format_function_t * format_header;
+  format_function_t *format_header;
 
   /* Parser for packet generator edits for this protocol. */
-  unformat_function_t * unformat_pg_edit;
+  unformat_function_t *unformat_pg_edit;
 } tcp_udp_port_info_t;
 
-typedef struct {
+typedef struct
+{
   /* Per IP protocol info. */
-  ip_protocol_info_t * protocol_infos;
+  ip_protocol_info_t *protocol_infos;
 
   /* Protocol info index hashed by 8 bit IP protocol. */
-  uword * protocol_info_by_protocol;
+  uword *protocol_info_by_protocol;
 
   /* Hash table mapping IP protocol name (see protocols.def)
      to protocol number. */
-  uword * protocol_info_by_name;
+  uword *protocol_info_by_name;
 
   /* Per TCP/UDP port info. */
-  tcp_udp_port_info_t * port_infos;
+  tcp_udp_port_info_t *port_infos;
 
   /* Hash table from network-byte-order port to port info index. */
-  uword * port_info_by_port;
+  uword *port_info_by_port;
 
   /* Hash table mapping TCP/UDP name to port info index. */
-  uword * port_info_by_name;
+  uword *port_info_by_name;
 } ip_main_t;
 
 extern ip_main_t ip_main;
 
-clib_error_t *
-ip_main_init (vlib_main_t * vm);
+clib_error_t *ip_main_init (vlib_main_t * vm);
 
 static inline ip_protocol_info_t *
 ip_get_protocol_info (ip_main_t * im, u32 protocol)
 {
-  uword * p;
+  uword *p;
 
   p = hash_get (im->protocol_info_by_protocol, protocol);
   return p ? vec_elt_at_index (im->protocol_infos, p[0]) : 0;
@@ -150,51 +141,22 @@ ip_get_protocol_info (ip_main_t * im, u32 protocol)
 static inline tcp_udp_port_info_t *
 ip_get_tcp_udp_port_info (ip_main_t * im, u32 port)
 {
-  uword * p;
+  uword *p;
 
   p = hash_get (im->port_info_by_port, port);
   return p ? vec_elt_at_index (im->port_infos, p[0]) : 0;
 }
-      
+
 always_inline ip_csum_t
-ip_incremental_checksum_buffer (vlib_main_t * vm, vlib_buffer_t * first_buffer,
+ip_incremental_checksum_buffer (vlib_main_t * vm,
+                               vlib_buffer_t * first_buffer,
                                u32 first_buffer_offset,
-                               u32 n_bytes_to_checksum,
-                               ip_csum_t sum)
-#if DPDK > 0
-{
-  u32 n_bytes_left = n_bytes_to_checksum;
-  struct rte_mbuf * mb = ((struct rte_mbuf *)first_buffer)-1;
-  u8 nb_segs = mb->nb_segs;
-  ASSERT(mb->data_len >= first_buffer_offset);
-  void * h;
-  u32 n;
-  
-  n = clib_min (n_bytes_left, mb->data_len);
-  h = vlib_buffer_get_current (first_buffer) + first_buffer_offset;
-  while (n_bytes_left)
-    {
-      sum = ip_incremental_checksum (sum, h, n);
-      n_bytes_left -= n;
-      nb_segs--;
-      mb = mb->next;
-      if ((nb_segs == 0) || (mb == 0))
-       break;
-
-      n = clib_min (n_bytes_left, mb->data_len);
-      h = rte_ctrlmbuf_data(mb);
-    }
-  ASSERT(n_bytes_left == 0);
-  ASSERT(nb_segs == 0);
-  return sum;
-}
-#else
+                               u32 n_bytes_to_checksum, ip_csum_t sum)
 {
-  vlib_buffer_t * b = first_buffer;
+  vlib_buffer_t *b = first_buffer;
   u32 n_bytes_left = n_bytes_to_checksum;
   ASSERT (b->current_length >= first_buffer_offset);
-  void * h;
+  void *h;
   u32 n;
 
   n = clib_min (n_bytes_left, b->current_length);
@@ -216,8 +178,18 @@ ip_incremental_checksum_buffer (vlib_main_t * vm, vlib_buffer_t * first_buffer,
 
   return sum;
 }
-#endif /* DPDK */
 
-void ip_del_all_interface_addresses (vlib_main_t *vm, u32 sw_if_index);
+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;
 
 #endif /* included_ip_main_h */
+
+/*
+ * fd.io coding-style-patch-verification: ON
+ *
+ * Local Variables:
+ * eval: (c-set-style "gnu")
+ * End:
+ */