mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-10 13:13:44 +01:00
hs: Always use a 3-hop path when a v3 single onion intro fails
Previously, we always used a 1-hop path, no matter how many times a v3 single onion intro failed. Fixes bug 23818; bugfix on 0.3.2.1-alpha.
This commit is contained in:
parent
c94904b359
commit
229a982405
@ -775,8 +775,15 @@ hs_circ_launch_intro_point(hs_service_t *service,
|
||||
tor_assert(ei);
|
||||
|
||||
/* Update circuit flags in case of a single onion service that requires a
|
||||
* direct connection. */
|
||||
if (service->config.is_single_onion) {
|
||||
* direct connection.
|
||||
*
|
||||
* We only use a one-hop path on the first attempt. If the first attempt
|
||||
* fails, we use a 3-hop path for reachability / reliability.
|
||||
* (Unlike v2, retries is incremented by the caller before it calls this
|
||||
* function.)
|
||||
*/
|
||||
tor_assert_nonfatal(ip->circuit_retries > 0);
|
||||
if (service->config.is_single_onion && ip->circuit_retries == 1) {
|
||||
circ_flags |= CIRCLAUNCH_ONEHOP_TUNNEL;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user