axa 3.0.1
Farsight Security Advanced Exchange Access (AXA)
|
This is the handle on an AXA trie. More...
Data Fields | |
trie_node_t * | ipv4_root |
root of the internal IPv4 trie | |
trie_node_t * | ipv6_root |
root of the internal IPv6 trie | |
trie_node_t * | dom_root |
root of the domain name trie | |
int | hitlist_max |
hit array limit; default 10 | |
void(* | node_free )(trie_node_t *node) |
Delete or schedule the deletion of a trie node. | |
void(* | tval_list_free )(tval_list_t *tval_list) |
Delete or schedule the deletion of an array of values that once belonged to a trie node. | |
bool(* | hitlist_find )(const hitlist_t *hitlist, tval_t tval) |
NULL or return -1 or the index of an identical, previously found 'hit' on a node value. | |
void(* | lock )(void) |
Lock to add or delete a node. | |
void(* | unlock )(void) |
Unlock the trie. | |
void(* | assert_lock )(void) |
Check the trie lock. | |
This is the handle on an AXA trie.
Trie users must create and initialize one of these structures before first using an AXA trie. Zero or NULL is acceptable for all of its entries.
trie_node_t* trie_roots_t::ipv4_root |
root of the internal IPv4 trie
trie_node_t* trie_roots_t::ipv6_root |
root of the internal IPv6 trie
trie_node_t* trie_roots_t::dom_root |
root of the domain name trie
int trie_roots_t::hitlist_max |
hit array limit; default 10
void(* trie_roots_t::node_free) (trie_node_t *node) |
Delete or schedule the deletion of a trie node.
AXA trie users that do not need non-blocking trie searches can set this to NULL or axa_trie_node_delete. A supplied function must eventually call axa_trie_node_free().
void(* trie_roots_t::tval_list_free) (tval_list_t *tval_list) |
Delete or schedule the deletion of an array of values that once belonged to a trie node.
AXA trie users that do not need non-blocking trie searches can set this to NULL or axa_trie_node_delete. A supplied function must eventually call free().
NULL or return -1 or the index of an identical, previously found 'hit' on a node value.
void(* trie_roots_t::lock) (void) |
Lock to add or delete a node.
void(* trie_roots_t::unlock) (void) |
Unlock the trie.
void(* trie_roots_t::assert_lock) (void) |
Check the trie lock.