13 #include <rte_compat.h>
20 #define RTE_LPM6_MAX_DEPTH 128
21 #define RTE_LPM6_IPV6_ADDR_SIZE 16
23 #define RTE_LPM6_NAMESIZE 32
100 rte_lpm6_add_v20(
struct rte_lpm6 *lpm, uint8_t *ip, uint8_t
depth,
103 rte_lpm6_add_v1705(
struct rte_lpm6 *lpm, uint8_t *ip, uint8_t
depth,
125 rte_lpm6_is_rule_present_v20(
struct rte_lpm6 *lpm, uint8_t *ip, uint8_t
depth,
128 rte_lpm6_is_rule_present_v1705(
struct rte_lpm6 *lpm, uint8_t *ip, uint8_t
depth,
162 uint8_t ips[][RTE_LPM6_IPV6_ADDR_SIZE], uint8_t *depths,
unsigned n);
186 rte_lpm6_lookup(
const struct rte_lpm6 *lpm, uint8_t *ip, uint32_t *next_hop);
188 rte_lpm6_lookup_v20(
const struct rte_lpm6 *lpm, uint8_t *ip, uint8_t *next_hop);
190 rte_lpm6_lookup_v1705(
const struct rte_lpm6 *lpm, uint8_t *ip,
211 uint8_t ips[][RTE_LPM6_IPV6_ADDR_SIZE],
212 int32_t *next_hops,
unsigned int n);
214 rte_lpm6_lookup_bulk_func_v20(
const struct rte_lpm6 *lpm,
215 uint8_t ips[][RTE_LPM6_IPV6_ADDR_SIZE],
216 int16_t *next_hops,
unsigned int n);
218 rte_lpm6_lookup_bulk_func_v1705(
const struct rte_lpm6 *lpm,
219 uint8_t ips[][RTE_LPM6_IPV6_ADDR_SIZE],
220 int32_t *next_hops,
unsigned int n);
int rte_lpm6_lookup_bulk_func(const struct rte_lpm6 *lpm, uint8_t ips[][RTE_LPM6_IPV6_ADDR_SIZE], int32_t *next_hops, unsigned int n)
struct rte_lpm6 * rte_lpm6_create(const char *name, int socket_id, const struct rte_lpm6_config *config)
int rte_lpm6_is_rule_present(struct rte_lpm6 *lpm, uint8_t *ip, uint8_t depth, uint32_t *next_hop)
int rte_lpm6_delete_bulk_func(struct rte_lpm6 *lpm, uint8_t ips[][RTE_LPM6_IPV6_ADDR_SIZE], uint8_t *depths, unsigned n)
int rte_lpm6_lookup(const struct rte_lpm6 *lpm, uint8_t *ip, uint32_t *next_hop)
struct rte_lpm6 * rte_lpm6_find_existing(const char *name)
int rte_lpm6_delete(struct rte_lpm6 *lpm, uint8_t *ip, uint8_t depth)
void rte_lpm6_delete_all(struct rte_lpm6 *lpm)
void rte_lpm6_free(struct rte_lpm6 *lpm)
int rte_lpm6_add(struct rte_lpm6 *lpm, uint8_t *ip, uint8_t depth, uint32_t next_hop)