Commit 60cf5ac2 authored by David Goulet's avatar David Goulet 🔆 Committed by Nick Mathewson
Browse files

config: Remove CloseHSServiceRendCircuitsImmediatelyOnTimeout option

Deprecated in, this commits changes it as OBSOLETE() and cleans
up the code associated with it.

Partially fixes #22060
Signed-off-by: David Goulet's avatarDavid Goulet <>
parent 87e9dc48
......@@ -12,3 +12,6 @@
- CloseHSClientCircuitsImmediatelyOnTimeout was deprecated in and now has been rendered obsolete. Code has been removed
and feature no longer exists.
- CloseHSServiceRendCircuitsImmediatelyOnTimeout was deprecated in and now has been rendered obsolete. Code has been removed
and feature no longer exists.
......@@ -963,14 +963,6 @@ The following options are useful only for clients (that is, if
services can be configured to require authorization using the
**HiddenServiceAuthorizeClient** option.
[[CloseHSServiceRendCircuitsImmediatelyOnTimeout]] **CloseHSServiceRendCircuitsImmediatelyOnTimeout** **0**|**1**::
If 1, Tor will close unfinished hidden-service-side rendezvous
circuits after the current circuit-build timeout. Otherwise, such
circuits will be left open, in the hope that they will finish
connecting to their destinations. In either case, another
rendezvous circuit for the same destination client will be
launched. (Default: 0)
[[LongLivedPorts]] **LongLivedPorts** __PORTS__::
A list of ports for services that tend to have long-running connections
(e.g. chat and interactive shells). Circuits for streams that use these
......@@ -747,8 +747,7 @@ circuit_expire_building(void)
/* If this is a service-side rendezvous circuit which is far
* enough along in connecting to its destination, consider sparing
* it. */
if (!(options->CloseHSServiceRendCircuitsImmediatelyOnTimeout) &&
!(TO_ORIGIN_CIRCUIT(victim)->hs_circ_has_timed_out) &&
if (!(TO_ORIGIN_CIRCUIT(victim)->hs_circ_has_timed_out) &&
victim->purpose == CIRCUIT_PURPOSE_S_CONNECT_REND) {
log_info(LD_CIRC,"Marking circ %u (state %d:%s, purpose %d) "
"as timed-out HS circ; relaunching rendezvous attempt.",
......@@ -361,7 +361,7 @@ static config_var_t option_vars_[] = {
VAR("HiddenServiceStatistics", BOOL, HiddenServiceStatistics_option, "1"),
V(CloseHSServiceRendCircuitsImmediatelyOnTimeout, BOOL, "0"),
V(HiddenServiceSingleHopMode, BOOL, "0"),
V(HiddenServiceNonAnonymousMode,BOOL, "0"),
......@@ -664,8 +664,6 @@ static const config_deprecation_t option_deprecation_notes_[] = {
"a wide variety of application-level attacks." },
{ "ClientDNSRejectInternalAddresses", "Turning this on makes your client "
"easier to fingerprint, and may open you to esoteric attacks." },
{ "CloseHSServiceRendCircuitsImmediatelyOnTimeout", "This option makes "
"your hidden services easier to fingerprint." },
{ "WarnUnsafeSocks", "Changing this option makes it easier for you "
"to accidentally lose your anonymity by leaking DNS information" },
{ "TLSECGroup", "The default is a nice secure choice; the other option "
......@@ -3769,10 +3769,6 @@ typedef struct {
/** A routerset that should be used when picking RPs for HS circuits. */
routerset_t *Tor2webRendezvousPoints;
/** Close hidden-service-side rendezvous circuits immediately when
* they reach the normal circuit-build timeout. */
int CloseHSServiceRendCircuitsImmediatelyOnTimeout;
/** Onion Services in HiddenServiceSingleHopMode make one-hop (direct)
* circuits between the onion service server, and the introduction and
* rendezvous points. (Onion service descriptors are still posted using
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment