Mesh of query states. More...
#include <mesh.h>
Data Fields | |
struct module_stack | mods |
active module stack | |
struct module_env * | env |
environment for new states | |
rbtree_type | run |
set of runnable queries (mesh_state.run_node) | |
rbtree_type | all |
rbtree of all current queries (mesh_state.node) | |
size_t | num_reply_addrs |
count of the total number of mesh_reply entries | |
size_t | num_reply_states |
count of the number of mesh_states that have mesh_replies Because a state can send results to multiple reply addresses, this number must be equal or lower than num_reply_addrs. | |
size_t | num_detached_states |
number of mesh_states that have no mesh_replies, and also an empty set of super-states, thus are 'toplevel' or detached internal opportunistic queries | |
size_t | num_forever_states |
number of reply states in the forever list | |
size_t | max_reply_states |
max total number of reply states to have | |
size_t | max_forever_states |
max forever number of reply states to have | |
size_t | stats_jostled |
stats, cumulative number of reply states jostled out | |
size_t | stats_dropped |
stats, cumulative number of incoming client msgs dropped | |
size_t | ans_expired |
stats, number of expired replies sent | |
size_t | ans_cachedb |
stats, number of cached replies from cachedb | |
size_t | replies_sent |
number of replies sent | |
struct timeval | replies_sum_wait |
sum of waiting times for the replies | |
struct timehist * | histogram |
histogram of time values | |
size_t | ans_secure |
(extended stats) secure replies | |
size_t | ans_bogus |
(extended stats) bogus replies | |
size_t | ans_rcode [UB_STATS_RCODE_NUM] |
(extended stats) rcodes in replies | |
size_t | ans_nodata |
(extended stats) rcode nodata in replies | |
size_t | rpz_action [UB_STATS_RPZ_ACTION_NUM] |
(extended stats) type of applied RPZ action | |
struct sldns_buffer * | qbuf_bak |
backup of query if other operations recurse and need the network buffers | |
struct mesh_state * | forever_first |
double linked list of the run-to-completion query states. More... | |
struct mesh_state * | forever_last |
last entry in run forever list | |
struct mesh_state * | jostle_first |
double linked list of the query states that can be jostled out by new queries if too old. More... | |
struct mesh_state * | jostle_last |
last entry in jostle list - this is the entry that is newest | |
struct timeval | jostle_max |
timeout for jostling. More... | |
int | use_response_ip |
If we need to use response ip (value passed from daemon) | |
int | use_rpz |
If we need to use RPZ (value passed from daemon) | |
Mesh of query states.
struct mesh_state* mesh_area::forever_first |
double linked list of the run-to-completion query states.
These are query states with a reply
Referenced by mesh_delete_all(), and mesh_state_delete().
struct mesh_state* mesh_area::jostle_first |
double linked list of the query states that can be jostled out by new queries if too old.
These are query states with a reply
Referenced by mesh_delete_all(), mesh_make_new_space(), and mesh_state_delete().
struct timeval mesh_area::jostle_max |
timeout for jostling.
if age is lower, it does not get jostled.
Referenced by mesh_create(), and mesh_make_new_space().