12 #ifndef TOR_CIRCUITSTATS_H 13 #define TOR_CIRCUITSTATS_H 22 int ignore_consensus);
32 int did_onehop, time_t start_time);
47 void circuit_build_times_update_last_circ(circuit_build_times_t *cbt);
50 #ifdef CIRCUITSTATS_PRIVATE 58 circuit_build_times_t *cbt);
62 build_time_t circuit_build_times_generate_sample(circuit_build_times_t *cbt,
63 double q_lo,
double q_hi);
64 double circuit_build_times_cdf(circuit_build_times_t *cbt,
double x);
65 void circuit_build_times_initial_alpha(circuit_build_times_t *cbt,
66 double quantile,
double time_ms);
67 void circuitbuild_running_unit_tests(
void);
75 #ifdef CIRCUITSTATS_PRIVATE 77 struct circuit_build_times_s {
83 int total_build_times;
93 int have_computed_timeout;
101 uint32_t num_circ_succeeded;
104 uint32_t num_circ_timeouts;
107 uint32_t num_circ_closed;
void circuit_build_times_set_timeout(circuit_build_times_t *cbt)
Definition: circuitstats.c:1812
void circuit_build_times_free_timeouts(circuit_build_times_t *cbt)
Definition: circuitstats.c:588
uint32_t build_time_t
Definition: or.h:4870
int circuit_build_times_count_close(circuit_build_times_t *cbt, int did_onehop, time_t start_time)
Definition: circuitstats.c:1711
void circuit_build_times_init(circuit_build_times_t *cbt)
Definition: circuitstats.c:562
double circuit_build_times_close_rate(const circuit_build_times_t *cbt)
Definition: circuitstats.c:1689
const circuit_build_times_t * get_circuit_build_times(void)
Definition: circuitstats.c:73
double circuit_build_times_timeout_rate(const circuit_build_times_t *cbt)
Definition: circuitstats.c:1670
void circuit_build_times_new_consensus_params(circuit_build_times_t *cbt, networkstatus_t *ns)
Definition: circuitstats.c:423
#define CBT_NCIRCUITS_TO_OBSERVE
Definition: or.h:4859
STATIC double circuit_build_times_calculate_timeout(circuit_build_times_t *cbt, double quantile)
Definition: circuitstats.c:1275
double get_circuit_build_close_time_ms(void)
Definition: circuitstats.c:88
STATIC int circuit_build_times_network_check_changed(circuit_build_times_t *cbt)
Definition: circuitstats.c:1607
int circuit_build_times_parse_state(circuit_build_times_t *cbt, or_state_t *state)
Definition: circuitstats.c:1051
void circuit_build_times_count_timeout(circuit_build_times_t *cbt, int did_onehop)
Definition: circuitstats.c:1743
int circuit_build_times_disabled(const or_options_t *options)
Definition: circuitstats.c:113
void circuit_build_times_network_circ_success(circuit_build_times_t *cbt)
Definition: circuitstats.c:1467
void circuit_build_times_mark_circ_as_measurement_only(origin_circuit_t *circ)
Definition: circuitstats.c:634
int circuit_build_times_disabled_(const or_options_t *options, int ignore_consensus)
Definition: circuitstats.c:120
circuit_build_times_t * get_circuit_build_times_mutable(void)
Definition: circuitstats.c:80
int circuit_build_times_enough_to_compute(const circuit_build_times_t *cbt)
Definition: circuitstats.c:252
int circuit_build_times_network_check_live(const circuit_build_times_t *cbt)
Definition: circuitstats.c:1587
double get_circuit_build_timeout_ms(void)
Definition: circuitstats.c:96
int circuit_build_times_add_time(circuit_build_times_t *cbt, build_time_t time)
Definition: circuitstats.c:753
void circuit_build_times_update_state(const circuit_build_times_t *cbt, or_state_t *state)
Definition: circuitstats.c:925
STATIC void circuit_build_times_reset(circuit_build_times_t *cbt)
Definition: circuitstats.c:542
int circuit_build_times_needs_circuits(const circuit_build_times_t *cbt)
Definition: circuitstats.c:1380
STATIC int circuit_build_times_update_alpha(circuit_build_times_t *cbt)
Definition: circuitstats.c:1187
void circuit_build_times_handle_completed_hop(origin_circuit_t *circ)
Definition: circuitstats.c:676
int circuit_build_times_needs_circuits_now(const circuit_build_times_t *cbt)
Definition: circuitstats.c:1391
void circuit_build_times_network_is_live(circuit_build_times_t *cbt)
Definition: circuitstats.c:1414