mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-11 05:33:47 +01:00
Special vanguard L3 increased path length does not apply for vanguards-lite
Co-authored-by: Mike Perry <mikeperry-git@torproject.org>
This commit is contained in:
parent
0240c00929
commit
9afd9d0940
@ -1359,7 +1359,9 @@ route_len_for_purpose(uint8_t purpose, extend_info_t *exit_ei)
|
|||||||
int routelen = DEFAULT_ROUTE_LEN;
|
int routelen = DEFAULT_ROUTE_LEN;
|
||||||
int known_purpose = 0;
|
int known_purpose = 0;
|
||||||
|
|
||||||
if (circuit_should_use_vanguards(purpose)) {
|
/* If we're using L3 vanguards, we need longer paths for onion services */
|
||||||
|
if (circuit_purpose_is_hidden_service(purpose) &&
|
||||||
|
get_options()->HSLayer3Nodes) {
|
||||||
/* Clients want an extra hop for rends to avoid linkability.
|
/* Clients want an extra hop for rends to avoid linkability.
|
||||||
* Services want it for intro points to avoid publishing their
|
* Services want it for intro points to avoid publishing their
|
||||||
* layer3 guards. They want it for hsdir posts to use
|
* layer3 guards. They want it for hsdir posts to use
|
||||||
@ -1374,14 +1376,6 @@ route_len_for_purpose(uint8_t purpose, extend_info_t *exit_ei)
|
|||||||
purpose == CIRCUIT_PURPOSE_S_ESTABLISH_INTRO)
|
purpose == CIRCUIT_PURPOSE_S_ESTABLISH_INTRO)
|
||||||
return routelen+1;
|
return routelen+1;
|
||||||
|
|
||||||
/* If we only have Layer2 vanguards, then we do not need
|
|
||||||
* the extra hop for linkabilty reasons (see below).
|
|
||||||
* This means all hops can be of the form:
|
|
||||||
* S/C - G - L2 - M - R/HSDir/I
|
|
||||||
*/
|
|
||||||
if (get_options()->HSLayer2Nodes && !get_options()->HSLayer3Nodes)
|
|
||||||
return routelen+1;
|
|
||||||
|
|
||||||
/* For connections to hsdirs, clients want two extra hops
|
/* For connections to hsdirs, clients want two extra hops
|
||||||
* when using layer3 guards, to avoid linkability.
|
* when using layer3 guards, to avoid linkability.
|
||||||
* Same goes for intro points. Note that the route len
|
* Same goes for intro points. Note that the route len
|
||||||
|
Loading…
Reference in New Issue
Block a user