tor  master
Data Fields
circuitmux_s Struct Reference
Collaboration diagram for circuitmux_s:
Collaboration graph
[legend]

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_tpolicy
 
circuitmux_policy_data_tpolicy_data
 

Field Documentation

◆ destroy_cell_queue

destroy_cell_queue_t destroy_cell_queue

List of queued destroy cells

◆ destroy_ctr

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.

◆ last_cell_was_destroy

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.


The documentation for this struct was generated from the following file: