mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-19 18:00:33 +01:00
Add circuit time check before logging about relaxing circuit time
Signed-off-by: José M. Guisado <guigom@riseup.net>
This commit is contained in:
parent
d83c299eba
commit
78220aae1e
3
changes/bug28698
Normal file
3
changes/bug28698
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
o Minor bugfix (logging):
|
||||||
|
- Avoid logging about relaxing circuits when their time is fixed.
|
||||||
|
Fixes bug 28698; bugfix on 0.2.4.7-alpha
|
@ -545,6 +545,8 @@ circuit_expire_building(void)
|
|||||||
|
|
||||||
SMARTLIST_FOREACH_BEGIN(circuit_get_global_list(), circuit_t *,victim) {
|
SMARTLIST_FOREACH_BEGIN(circuit_get_global_list(), circuit_t *,victim) {
|
||||||
struct timeval cutoff;
|
struct timeval cutoff;
|
||||||
|
bool fixed_time = circuit_build_times_disabled(get_options());
|
||||||
|
|
||||||
if (!CIRCUIT_IS_ORIGIN(victim) || /* didn't originate here */
|
if (!CIRCUIT_IS_ORIGIN(victim) || /* didn't originate here */
|
||||||
victim->marked_for_close) /* don't mess with marked circs */
|
victim->marked_for_close) /* don't mess with marked circs */
|
||||||
continue;
|
continue;
|
||||||
@ -599,17 +601,19 @@ circuit_expire_building(void)
|
|||||||
if (!TO_ORIGIN_CIRCUIT(victim)->relaxed_timeout) {
|
if (!TO_ORIGIN_CIRCUIT(victim)->relaxed_timeout) {
|
||||||
int first_hop_succeeded = TO_ORIGIN_CIRCUIT(victim)->cpath->state
|
int first_hop_succeeded = TO_ORIGIN_CIRCUIT(victim)->cpath->state
|
||||||
== CPATH_STATE_OPEN;
|
== CPATH_STATE_OPEN;
|
||||||
log_info(LD_CIRC,
|
if (!fixed_time) {
|
||||||
"No circuits are opened. Relaxing timeout for circuit %d "
|
log_info(LD_CIRC,
|
||||||
"(a %s %d-hop circuit in state %s with channel state %s).",
|
"No circuits are opened. Relaxing timeout for circuit %d "
|
||||||
TO_ORIGIN_CIRCUIT(victim)->global_identifier,
|
"(a %s %d-hop circuit in state %s with channel state %s).",
|
||||||
circuit_purpose_to_string(victim->purpose),
|
TO_ORIGIN_CIRCUIT(victim)->global_identifier,
|
||||||
TO_ORIGIN_CIRCUIT(victim)->build_state ?
|
circuit_purpose_to_string(victim->purpose),
|
||||||
TO_ORIGIN_CIRCUIT(victim)->build_state->desired_path_len :
|
TO_ORIGIN_CIRCUIT(victim)->build_state ?
|
||||||
-1,
|
TO_ORIGIN_CIRCUIT(victim)->build_state->desired_path_len :
|
||||||
circuit_state_to_string(victim->state),
|
-1,
|
||||||
victim->n_chan ?
|
circuit_state_to_string(victim->state),
|
||||||
channel_state_to_string(victim->n_chan->state) : "none");
|
victim->n_chan ?
|
||||||
|
channel_state_to_string(victim->n_chan->state) : "none");
|
||||||
|
}
|
||||||
|
|
||||||
/* We count the timeout here for CBT, because technically this
|
/* We count the timeout here for CBT, because technically this
|
||||||
* was a timeout, and the timeout value needs to reset if we
|
* was a timeout, and the timeout value needs to reset if we
|
||||||
@ -623,7 +627,8 @@ circuit_expire_building(void)
|
|||||||
} else {
|
} else {
|
||||||
static ratelim_t relax_timeout_limit = RATELIM_INIT(3600);
|
static ratelim_t relax_timeout_limit = RATELIM_INIT(3600);
|
||||||
const double build_close_ms = get_circuit_build_close_time_ms();
|
const double build_close_ms = get_circuit_build_close_time_ms();
|
||||||
log_fn_ratelim(&relax_timeout_limit, LOG_NOTICE, LD_CIRC,
|
if (!fixed_time) {
|
||||||
|
log_fn_ratelim(&relax_timeout_limit, LOG_NOTICE, LD_CIRC,
|
||||||
"No circuits are opened. Relaxed timeout for circuit %d "
|
"No circuits are opened. Relaxed timeout for circuit %d "
|
||||||
"(a %s %d-hop circuit in state %s with channel state %s) to "
|
"(a %s %d-hop circuit in state %s with channel state %s) to "
|
||||||
"%ldms. However, it appears the circuit has timed out "
|
"%ldms. However, it appears the circuit has timed out "
|
||||||
@ -637,6 +642,7 @@ circuit_expire_building(void)
|
|||||||
victim->n_chan ?
|
victim->n_chan ?
|
||||||
channel_state_to_string(victim->n_chan->state) : "none",
|
channel_state_to_string(victim->n_chan->state) : "none",
|
||||||
(long)build_close_ms);
|
(long)build_close_ms);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user