host stack: update stale copyright
[vpp.git] / src / vnet / udp / udp_encap.h
index 185d5e7..888efa8 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2016 Cisco and/or its affiliates.
+ * Copyright (c) 2016-2019 Cisco and/or its affiliates.
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at:
@@ -21,7 +21,7 @@
 #include <vnet/fib/fib_node.h>
 
 /**
- * UDP encapsualtion.
+ * UDP encapsulation.
  * A representation of the encapsulation of packets in UDP-over-IP.
  * This is encapsulation only, there is no tunnel interface, hence
  * it is uni-directional. For decap register a handler with the UDP port
  */
 
 /**
- * Fixup behaviour. Actions performed on the encap in the data-plance
+ * Fixup behaviour. Actions performed on the encap in the data-plane
  */
 typedef enum udp_encap_fixup_flags_t_
 {
   UDP_ENCAP_FIXUP_NONE = 0,
-    /**
-     * UDP source port contains an entropy/hash value for load-balancing by downstream peers.
-     */
+  /**
+   * UDP source port contains an entropy/hash value for load-balancing by downstream peers.
+   */
   UDP_ENCAP_FIXUP_UDP_SRC_PORT_ENTROPY = (1 << 0),
 } udp_encap_fixup_flags_t;
 
 /**
- * The UDP encap represenation
+ * The UDP encap representation
  */
 typedef struct udp_encap_t_
 {
-    /**
-     * The first cacheline contains the data used in the data-plane
-     */
+  /**
+   * The first cacheline contains the data used in the data-plane
+   */
   CLIB_CACHE_LINE_ALIGN_MARK (cacheline0);
 
-    /**
-     * The headers to paint, in packet painting order
-     */
+  /**
+   * The headers to paint, in packet painting order
+   */
   union
   {
     struct
@@ -67,48 +67,44 @@ typedef struct udp_encap_t_
     } __attribute__ ((packed)) ip6;
   } __attribute__ ((packed)) ue_hdrs;
 
-    /**
-     * Flags controlling fixup behaviour
-     */
+  /**
+   * Flags controlling fixup behaviour
+   */
   udp_encap_fixup_flags_t ue_flags;
 
-    /**
-     * The DPO used to forward to the next node in the VLIB graph
-     */
+  /**
+   * The DPO used to forward to the next node in the VLIB graph
+   */
   dpo_id_t ue_dpo;
 
-    /**
-     * the protocol of the IP header imposed
-     */
+  /**
+   * the protocol of the IP header imposed
+   */
   fib_protocol_t ue_ip_proto;
 
+  /**
+   * The second cacheline contains control-plane data
+   */
     CLIB_CACHE_LINE_ALIGN_MARK (cacheline1);
 
-    /**
-     * linkage into the FIB graph
-     */
+  /**
+   * linkage into the FIB graph
+   */
   fib_node_t ue_fib_node;
 
-    /**
-     * The ID given by the user/client.
-     * This ID is used by the client for modifications.
-     */
-  u32 ue_id;
-
-    /**
-     * Tracking information for the IP destination
-     */
+  /**
+   * Tracking information for the IP destination
+   */
   fib_node_index_t ue_fib_entry_index;
   u32 ue_fib_sibling;
 
-    /**
-     * The FIB index in which the encap destination resides
-     */
+  /**
+   * The FIB index in which the encap destination resides
+   */
   index_t ue_fib_index;
 } udp_encap_t;
 
-extern index_t udp_encap_add_and_lock (u32 id,
-                                      fib_protocol_t proto,
+extern index_t udp_encap_add_and_lock (fib_protocol_t proto,
                                       index_t fib_index,
                                       const ip46_address_t * src_ip,
                                       const ip46_address_t * dst_ip,
@@ -116,12 +112,10 @@ extern index_t udp_encap_add_and_lock (u32 id,
                                       u16 dst_port,
                                       udp_encap_fixup_flags_t flags);
 
-extern index_t udp_encap_find (u32 id);
-extern void udp_encap_lock (u32 id);
-extern void udp_encap_unlock (u32 id);
+extern void udp_encap_lock (index_t uei);
+extern void udp_encap_unlock (index_t uei);
 extern u8 *format_udp_encap (u8 * s, va_list * args);
-extern void udp_encap_unlock_w_index (index_t uei);
-extern void udp_encap_contribute_forwarding (u32 id,
+extern void udp_encap_contribute_forwarding (index_t uei,
                                             dpo_proto_t proto,
                                             dpo_id_t * dpo);
 
@@ -131,7 +125,7 @@ extern void udp_encap_get_stats (index_t uei, u64 * packets, u64 * bytes);
  * Callback function invoked when walking all encap objects.
  * Return non-zero to continue the walk.
  */
-typedef int (*udp_encap_walk_cb_t) (index_t uei, void *ctx);
+typedef walk_rc_t (*udp_encap_walk_cb_t) (index_t uei, void *ctx);
 
 /**
  * Walk each of the encap objects