tor
master
|
Data Fields | |
unsigned int | n_circuits |
unsigned int | n_active_circuits |
unsigned int | n_cells |
chanid_circid_muxinfo_map_t * | chanid_circid_map |
destroy_cell_queue_t | destroy_cell_queue |
unsigned int | last_cell_was_destroy: 1 |
int64_t | destroy_ctr |
const circuitmux_policy_t * | policy |
circuitmux_policy_data_t * | policy_data |
destroy_cell_queue_t destroy_cell_queue |
List of queued destroy cells
int64_t destroy_ctr |
Destroy counter: increment this when a destroy gets queued, decrement when we unqueue it, so we can test to make sure they don't starve.
unsigned int last_cell_was_destroy |
Boolean: True iff the last cell to circuitmux_get_first_active_circuit returned the destroy queue. Used to force alternation between destroy/non-destroy cells.
XXXX There is no reason to think that alternating is a particularly good approach – it's just designed to prevent destroys from starving other cells completely.