mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-24 12:23:32 +01:00
hs: Set rendezvous circuit timestamp_dirty all the time
We used to check if it was set to 0 which is what unused circuit have but when the rendezvous circuit was cannibalized, the timestamp_dirty is not 0 but we still need to reset it so we can actually use it without having the chance of expiring the next second (or very soon). Fixes #23123 Signed-off-by: David Goulet <dgoulet@torproject.org>
This commit is contained in:
parent
209bfe715c
commit
a52a32c855
@ -2590,9 +2590,10 @@ service_rendezvous_circ_has_opened(origin_circuit_t *circ)
|
||||
tor_assert(circ->hs_ident);
|
||||
tor_assert(TO_CIRCUIT(circ)->purpose == CIRCUIT_PURPOSE_S_CONNECT_REND);
|
||||
|
||||
/* Declare the circuit dirty to avoid reuse, and for path-bias */
|
||||
if (!TO_CIRCUIT(circ)->timestamp_dirty)
|
||||
TO_CIRCUIT(circ)->timestamp_dirty = time(NULL);
|
||||
/* Declare the circuit dirty to avoid reuse, and for path-bias. We set the
|
||||
* timestamp regardless of its content because that circuit could have been
|
||||
* cannibalized so in any cases, we are about to use that circuit more. */
|
||||
TO_CIRCUIT(circ)->timestamp_dirty = time(NULL);
|
||||
pathbias_count_use_attempt(circ);
|
||||
|
||||
/* Get the corresponding service and intro point. */
|
||||
|
@ -3332,9 +3332,10 @@ rend_service_rendezvous_has_opened(origin_circuit_t *circuit)
|
||||
NULL);
|
||||
rend_cookie = circuit->rend_data->rend_cookie;
|
||||
|
||||
/* Declare the circuit dirty to avoid reuse, and for path-bias */
|
||||
if (!circuit->base_.timestamp_dirty)
|
||||
circuit->base_.timestamp_dirty = time(NULL);
|
||||
/* Declare the circuit dirty to avoid reuse, and for path-bias. We set the
|
||||
* timestamp regardless of its content because that circuit could have been
|
||||
* cannibalized so in any cases, we are about to use that circuit more. */
|
||||
circuit->base_.timestamp_dirty = time(NULL);
|
||||
|
||||
/* This may be redundant */
|
||||
pathbias_count_use_attempt(circuit);
|
||||
|
Loading…
Reference in New Issue
Block a user