mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2025-02-24 06:48:05 +01:00
Fix: close intro circuit if no more intro points are usable
Once a NACK is received on the intro circuit, tor tries an other usable one by extending the current circuit to it. If no more intro points are usable, now close the circuit. Also, it's reason is changed before closing it so we don't report again an intro point failure and trigger an extra HS fetch. Fixes #14224 Signed-off-by: David Goulet <dgoulet@ev0ke.net>
This commit is contained in:
parent
b3c1152bae
commit
b5525476f5
2 changed files with 9 additions and 2 deletions
4
changes/bug14224
Normal file
4
changes/bug14224
Normal file
|
@ -0,0 +1,4 @@
|
|||
o Minor Bugfix
|
||||
- Close the intro circuit once we don't have any more usable intro
|
||||
points instead of making it timeout at some point. This also make sure
|
||||
no extra HS descriptor fetch is triggered.
|
|
@ -469,8 +469,11 @@ rend_client_introduction_acked(origin_circuit_t *circ,
|
|||
* too? */
|
||||
return result;
|
||||
} else {
|
||||
/* Close circuit because no more intro points are usable thus this
|
||||
* circuit is not useful anymore. */
|
||||
/* Close circuit because no more intro points are usable thus not
|
||||
* useful anymore. Change it's purpose before so we don't report an
|
||||
* intro point failure again triggering an extra descriptor fetch. */
|
||||
circuit_change_purpose(TO_CIRCUIT(circ),
|
||||
CIRCUIT_PURPOSE_C_INTRODUCE_ACKED);
|
||||
circuit_mark_for_close(TO_CIRCUIT(circ), END_CIRC_REASON_FINISHED);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue