![]() |
FD.io VPP
v21.01.1
Vector Packet Processing
|
Include dependency graph for radix.c:Go to the source code of this file.
Macros | |
| #define | rn_masktop (mask_rnhead->rnh_treetop) |
| #define | SUBTREE_OPEN "[ " |
| #define | SUBTREE_CLOSE " ]" |
| #define | MIN(x, y) (((x)<(y))?(x):(y)) |
| #define | R_Malloc(p, t, n) |
| #define | Free(p) clib_mem_free((p)) |
| #define | log(a, b, c...) |
| #define | bool i32 |
Typedefs | |
| typedef void(* | rn_printer_t) (void *, const char *fmt,...) |
Functions | |
| static int | rn_satisfies_leaf (const char *, struct radix_node *, int) |
| static int | rn_lexobetter (const void *, const void *) |
| static struct radix_mask * | rn_new_radix_mask (struct radix_node *, struct radix_mask *) |
| static struct radix_node * | rn_walknext (struct radix_node *, rn_printer_t, void *) |
| static struct radix_node * | rn_walkfirst (struct radix_node *, rn_printer_t, void *) |
| static void | rn_nodeprint (struct radix_node *, rn_printer_t, void *, const char *) |
| static struct radix_mask * | rm_alloc (void) |
| static void | rm_free (struct radix_mask *rm) |
| struct radix_node * | rn_search (const void *v_arg, struct radix_node *head) |
| struct radix_node * | rn_search_m (const void *v_arg, struct radix_node *head, const void *m_arg) |
| int | rn_refines (const void *m_arg, const void *n_arg) |
| struct radix_node * | rn_lookup (const void *v_arg, const void *m_arg, struct radix_node_head *head) |
| struct radix_node * | rn_match (const void *v_arg, struct radix_node_head *head) |
| struct radix_node * | rn_newpair (const void *v, int b, struct radix_node nodes[2]) |
| struct radix_node * | rn_insert (const void *v_arg, struct radix_node_head *head, int *dupentry, struct radix_node nodes[2]) |
| struct radix_node * | rn_addmask (const void *n_arg, int search, int skip) |
| struct radix_node * | rn_addroute (const void *v_arg, const void *n_arg, struct radix_node_head *head, struct radix_node treenodes[2]) |
| struct radix_node * | rn_delete1 (const void *v_arg, const void *netmask_arg, struct radix_node_head *head, struct radix_node *rn) |
| struct radix_node * | rn_delete (const void *v_arg, const void *netmask_arg, struct radix_node_head *head) |
| int | rn_walktree (struct radix_node_head *h, int(*f)(struct radix_node *, void *), void *w) |
| struct radix_node * | rn_search_matched (struct radix_node_head *h, int(*matcher)(struct radix_node *, void *), void *w) |
| int | rn_inithead (void **head, int off) |
| int | rn_inithead0 (struct radix_node_head *rnh, int off) |
| static clib_error_t * | rn_module_init (vlib_main_t *vm) |
Variables | |
| static int | max_keylen = 33 |
| struct radix_mask * | rn_mkfreelist |
| struct radix_node_head * | mask_rnhead |
| static char * | addmask_key |
| static const char | normal_chars [] |
| static char * | rn_zeros |
| static char * | rn_ones |
| #define Free | ( | p | ) | clib_mem_free((p)) |
| #define R_Malloc | ( | p, | |
| t, | |||
| n | |||
| ) |
| #define rn_masktop (mask_rnhead->rnh_treetop) |
|
static |
|
static |
| struct radix_node* rn_addmask | ( | const void * | n_arg, |
| int | search, | ||
| int | skip | ||
| ) |
| struct radix_node* rn_addroute | ( | const void * | v_arg, |
| const void * | n_arg, | ||
| struct radix_node_head * | head, | ||
| struct radix_node | treenodes[2] | ||
| ) |
| struct radix_node* rn_delete | ( | const void * | v_arg, |
| const void * | netmask_arg, | ||
| struct radix_node_head * | head | ||
| ) |
| struct radix_node* rn_delete1 | ( | const void * | v_arg, |
| const void * | netmask_arg, | ||
| struct radix_node_head * | head, | ||
| struct radix_node * | rn | ||
| ) |
| int rn_inithead | ( | void ** | head, |
| int | off | ||
| ) |
| int rn_inithead0 | ( | struct radix_node_head * | rnh, |
| int | off | ||
| ) |
| struct radix_node* rn_insert | ( | const void * | v_arg, |
| struct radix_node_head * | head, | ||
| int * | dupentry, | ||
| struct radix_node | nodes[2] | ||
| ) |
|
static |
| struct radix_node* rn_lookup | ( | const void * | v_arg, |
| const void * | m_arg, | ||
| struct radix_node_head * | head | ||
| ) |
| struct radix_node* rn_match | ( | const void * | v_arg, |
| struct radix_node_head * | head | ||
| ) |
|
static |
|
static |
| struct radix_node* rn_newpair | ( | const void * | v, |
| int | b, | ||
| struct radix_node | nodes[2] | ||
| ) |
|
static |
| int rn_refines | ( | const void * | m_arg, |
| const void * | n_arg | ||
| ) |
|
static |
| struct radix_node* rn_search | ( | const void * | v_arg, |
| struct radix_node * | head | ||
| ) |
| struct radix_node* rn_search_m | ( | const void * | v_arg, |
| struct radix_node * | head, | ||
| const void * | m_arg | ||
| ) |
| struct radix_node* rn_search_matched | ( | struct radix_node_head * | h, |
| int(*)(struct radix_node *, void *) | matcher, | ||
| void * | w | ||
| ) |
|
static |
|
static |
| int rn_walktree | ( | struct radix_node_head * | h, |
| int(*)(struct radix_node *, void *) | f, | ||
| void * | w | ||
| ) |
| struct radix_node_head* mask_rnhead |
|
static |
| struct radix_mask* rn_mkfreelist |