crypto/ipsec_mb: fix GCM requested digest length
[dpdk.git] / lib / fib / rte_fib6.h
index 0e193b8..62a425d 100644 (file)
  *
  * RTE FIB6 library.
  *
- * @warning
- * @b EXPERIMENTAL:
- * All functions in this file may be changed or removed without prior notice.
- *
  * FIB (Forwarding information base) implementation
  * for IPv6 Longest Prefix Match
  */
 
 #include <stdint.h>
 
-#include <rte_compat.h>
 
 #ifdef __cplusplus
 extern "C" {
@@ -75,6 +70,8 @@ struct rte_fib6_conf {
        /** Default value returned on lookup if there is no route */
        uint64_t default_nh;
        int     max_routes;
+       /** Size of the node extension in the internal RIB struct */
+       unsigned int rib_ext_sz;
        union {
                struct {
                        enum rte_fib_trie_nh_sz nh_sz;
@@ -96,7 +93,6 @@ struct rte_fib6_conf {
  *  Handle to FIB object on success
  *  NULL otherwise with rte_errno set to an appropriate values.
  */
-__rte_experimental
 struct rte_fib6 *
 rte_fib6_create(const char *name, int socket_id, struct rte_fib6_conf *conf);
 
@@ -110,7 +106,6 @@ rte_fib6_create(const char *name, int socket_id, struct rte_fib6_conf *conf);
  *  set appropriately. Possible rte_errno values include:
  *   - ENOENT - required entry not available to return.
  */
-__rte_experimental
 struct rte_fib6 *
 rte_fib6_find_existing(const char *name);
 
@@ -122,7 +117,6 @@ rte_fib6_find_existing(const char *name);
  * @return
  *   None
  */
-__rte_experimental
 void
 rte_fib6_free(struct rte_fib6 *fib);
 
@@ -140,7 +134,6 @@ rte_fib6_free(struct rte_fib6 *fib);
  * @return
  *   0 on success, negative value otherwise
  */
-__rte_experimental
 int
 rte_fib6_add(struct rte_fib6 *fib, const uint8_t ip[RTE_FIB6_IPV6_ADDR_SIZE],
        uint8_t depth, uint64_t next_hop);
@@ -157,7 +150,6 @@ rte_fib6_add(struct rte_fib6 *fib, const uint8_t ip[RTE_FIB6_IPV6_ADDR_SIZE],
  * @return
  *   0 on success, negative value otherwise
  */
-__rte_experimental
 int
 rte_fib6_delete(struct rte_fib6 *fib,
        const uint8_t ip[RTE_FIB6_IPV6_ADDR_SIZE], uint8_t depth);
@@ -179,7 +171,6 @@ rte_fib6_delete(struct rte_fib6 *fib,
  *  @return
  *   -EINVAL for incorrect arguments, otherwise 0
  */
-__rte_experimental
 int
 rte_fib6_lookup_bulk(struct rte_fib6 *fib,
        uint8_t ips[][RTE_FIB6_IPV6_ADDR_SIZE],
@@ -192,9 +183,8 @@ rte_fib6_lookup_bulk(struct rte_fib6 *fib,
  *   FIB6 object handle
  * @return
  *   Pointer on the dataplane struct on success
- *   NULL othervise
+ *   NULL otherwise
  */
-__rte_experimental
 void *
 rte_fib6_get_dp(struct rte_fib6 *fib);
 
@@ -205,9 +195,8 @@ rte_fib6_get_dp(struct rte_fib6 *fib);
  *   FIB object handle
  * @return
  *   Pointer on the RIB6 on success
- *   NULL othervise
+ *   NULL otherwise
  */
-__rte_experimental
 struct rte_rib6 *
 rte_fib6_get_rib(struct rte_fib6 *fib);
 
@@ -223,7 +212,6 @@ rte_fib6_get_rib(struct rte_fib6 *fib);
  *   0 on success
  *   -EINVAL on failure
  */
-__rte_experimental
 int
 rte_fib6_select_lookup(struct rte_fib6 *fib, enum rte_fib6_lookup_type type);