/**
* @file
+ *
+ * RTE RIB library.
+ *
+ * @warning
+ * @b EXPERIMENTAL:
+ * All functions in this file may be changed or removed without prior notice.
+ *
* Level compressed tree implementation for IPv4 Longest Prefix Match
*/
#include <rte_compat.h>
+#ifdef __cplusplus
+extern "C" {
+#endif
+
/**
* rte_rib_get_nxt() flags
*/
*/
__rte_experimental
int
-rte_rib_get_ip(struct rte_rib_node *node, uint32_t *ip);
+rte_rib_get_ip(const struct rte_rib_node *node, uint32_t *ip);
/**
* Get a depth from rte_rib_node
*/
__rte_experimental
int
-rte_rib_get_depth(struct rte_rib_node *node, uint8_t *depth);
+rte_rib_get_depth(const struct rte_rib_node *node, uint8_t *depth);
/**
* Get ext field from the rib node
*/
__rte_experimental
int
-rte_rib_get_nh(struct rte_rib_node *node, uint64_t *nh);
+rte_rib_get_nh(const struct rte_rib_node *node, uint64_t *nh);
/**
* Set nexthop into the rib node
*/
__rte_experimental
struct rte_rib *
-rte_rib_create(const char *name, int socket_id, struct rte_rib_conf *conf);
+rte_rib_create(const char *name, int socket_id,
+ const struct rte_rib_conf *conf);
/**
* Find an existing RIB object and return a pointer to it.
void
rte_rib_free(struct rte_rib *rib);
+#ifdef __cplusplus
+}
+#endif
+
#endif /* _RTE_RIB_H_ */