mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-27 22:03:31 +01:00
Take out the TestVia config option, since it was a workaround for
a bug that was fixed in Tor 0.1.1.21. svn:r16409
This commit is contained in:
parent
18d3153fbb
commit
d01813a8dd
@ -15,6 +15,10 @@ Changes in version 0.2.1.4-alpha - 2008-08-04
|
||||
complaining that it has become obsolete. Observed by xiando. Bugfix
|
||||
on 0.2.1.3-alpha.
|
||||
|
||||
o Removed features:
|
||||
- Take out the TestVia config option, since it was a workaround for
|
||||
a bug that was fixed in Tor 0.1.1.21.
|
||||
|
||||
|
||||
Changes in version 0.2.1.3-alpha - 2008-08-03
|
||||
o Bootstrapping bugfixes (on 0.2.1.x-alpha):
|
||||
@ -78,7 +82,7 @@ Changes in version 0.2.1.3-alpha - 2008-08-03
|
||||
is getting torn down, generate the stream event correctly.
|
||||
Bugfix on 0.1.2.x. Anonymous patch.
|
||||
|
||||
o Removed features
|
||||
o Removed features:
|
||||
- Remove all backward-compatibility code to support relays running
|
||||
versions of Tor so old that they no longer work at all on the
|
||||
Tor network.
|
||||
|
@ -576,12 +576,6 @@ unattached waiting for an appropriate circuit, before we fail it.
|
||||
(Default: 2 minutes.)
|
||||
.LP
|
||||
.TP
|
||||
\fBTestVia \fR\fInode\fR,\fInode\fR,\fI...\fP
|
||||
A list of identity fingerprints or nicknames of nodes to prefer for your middle
|
||||
hop when building testing circuits. This option is mainly for debugging
|
||||
reachability problems.
|
||||
.LP
|
||||
.TP
|
||||
\fBTrackHostExits \fR\fIhost\fR,\fI.domain\fR,\fI...\fR\fP
|
||||
For each value in the comma separated list, Tor will track recent connections
|
||||
to hosts that match this value and attempt to
|
||||
|
@ -1508,52 +1508,6 @@ onion_append_to_cpath(crypt_path_t **head_ptr, crypt_path_t *new_hop)
|
||||
}
|
||||
}
|
||||
|
||||
/** Pick a random server digest that's running a Tor version that
|
||||
* doesn't have the reachability bug. These are versions 0.1.1.21-cvs+
|
||||
* and 0.1.2.1-alpha+. Avoid picking authorities, since we're
|
||||
* probably already connected to them.
|
||||
*
|
||||
* We only return one, so this doesn't become stupid when the
|
||||
* whole network has upgraded.
|
||||
* XXX021 we can great simplify this function now that all the broken
|
||||
* versions are obsolete. -RD */
|
||||
static char *
|
||||
compute_preferred_testing_list(const char *answer)
|
||||
{
|
||||
smartlist_t *choices;
|
||||
routerlist_t *rl = router_get_routerlist();
|
||||
routerinfo_t *router;
|
||||
char *s;
|
||||
|
||||
if (answer) /* they have one in mind -- easy */
|
||||
return tor_strdup(answer);
|
||||
|
||||
choices = smartlist_create();
|
||||
/* now count up our choices */
|
||||
SMARTLIST_FOREACH(rl->routers, routerinfo_t *, r,
|
||||
if (r->is_running && r->is_valid &&
|
||||
((tor_version_as_new_as(r->platform,"0.1.1.21-cvs") &&
|
||||
!tor_version_as_new_as(r->platform,"0.1.2.0-alpha-cvs")) ||
|
||||
tor_version_as_new_as(r->platform,"0.1.2.1-alpha")) &&
|
||||
!is_local_IP(r->addr) &&
|
||||
!router_get_trusteddirserver_by_digest(r->cache_info.identity_digest))
|
||||
smartlist_add(choices, r));
|
||||
router = smartlist_choose(choices);
|
||||
smartlist_free(choices);
|
||||
if (!router) {
|
||||
log_info(LD_CIRC, "Looking for middle server that doesn't have the "
|
||||
"reachability bug, but didn't find one. Oh well.");
|
||||
return NULL;
|
||||
}
|
||||
log_info(LD_CIRC, "Looking for middle server that doesn't have the "
|
||||
"reachability bug, and chose '%s'. Great.", router->nickname);
|
||||
s = tor_malloc(HEX_DIGEST_LEN+2);
|
||||
s[0] = '$';
|
||||
base16_encode(s+1, HEX_DIGEST_LEN+1,
|
||||
router->cache_info.identity_digest, DIGEST_LEN);
|
||||
return s;
|
||||
}
|
||||
|
||||
/** A helper function used by onion_extend_cpath(). Use <b>purpose</b>
|
||||
* and <b>state</b> and the cpath <b>head</b> (currently populated only
|
||||
* to length <b>cur_len</b> to decide a suitable middle hop for a
|
||||
@ -1571,7 +1525,6 @@ choose_good_middle_server(uint8_t purpose,
|
||||
crypt_path_t *cpath;
|
||||
smartlist_t *excluded;
|
||||
or_options_t *options = get_options();
|
||||
char *preferred = NULL;
|
||||
router_crn_flags_t flags = 0;
|
||||
tor_assert(_CIRCUIT_PURPOSE_MIN <= purpose &&
|
||||
purpose <= _CIRCUIT_PURPOSE_MAX);
|
||||
@ -1588,8 +1541,6 @@ choose_good_middle_server(uint8_t purpose,
|
||||
routerlist_add_family(excluded, r);
|
||||
}
|
||||
}
|
||||
if (purpose == CIRCUIT_PURPOSE_TESTING)
|
||||
preferred = compute_preferred_testing_list(options->TestVia);
|
||||
|
||||
if (state->need_uptime)
|
||||
flags |= CRN_NEED_UPTIME;
|
||||
@ -1597,9 +1548,8 @@ choose_good_middle_server(uint8_t purpose,
|
||||
flags |= CRN_NEED_CAPACITY;
|
||||
if (options->_AllowInvalid & ALLOW_INVALID_MIDDLE)
|
||||
flags |= CRN_ALLOW_INVALID;
|
||||
choice = router_choose_random_node(preferred,
|
||||
choice = router_choose_random_node(NULL,
|
||||
excluded, options->ExcludeNodes, flags);
|
||||
tor_free(preferred);
|
||||
smartlist_free(excluded);
|
||||
return choice;
|
||||
}
|
||||
|
@ -301,7 +301,7 @@ static config_var_t _option_vars[] = {
|
||||
V(StrictExitNodes, BOOL, "0"),
|
||||
OBSOLETE("SysLog"),
|
||||
V(TestSocks, BOOL, "0"),
|
||||
V(TestVia, STRING, NULL),
|
||||
OBSOLETE("TestVia"),
|
||||
V(TrackHostExits, CSV, NULL),
|
||||
V(TrackHostExitsExpire, INTERVAL, "30 minutes"),
|
||||
OBSOLETE("TrafficShaping"),
|
||||
@ -550,7 +550,6 @@ static config_var_description_t options_description[] = {
|
||||
/* ServerDNS: DetectHijacking, ResolvConfFile, SearchDomains */
|
||||
{ "ShutdownWaitLength", "Wait this long for clients to finish when "
|
||||
"shutting down because of a SIGINT." },
|
||||
/* { "TestVia", } */
|
||||
|
||||
/* === directory cache options */
|
||||
{ "DirPort", "Serve directory information from this port, and act as a "
|
||||
@ -3311,8 +3310,6 @@ options_validate(or_options_t *old_options, or_options_t *options,
|
||||
return -1;
|
||||
if (check_nickname_list(options->EntryNodes, "EntryNodes", msg))
|
||||
return -1;
|
||||
if (check_nickname_list(options->TestVia, "TestVia", msg))
|
||||
return -1;
|
||||
if (check_nickname_list(options->MyFamily, "MyFamily", msg))
|
||||
return -1;
|
||||
for (cl = options->NodeFamilies; cl; cl = cl->next) {
|
||||
|
@ -2223,7 +2223,6 @@ typedef struct {
|
||||
int NumCpus; /**< How many CPUs should we try to use? */
|
||||
int RunTesting; /**< If true, create testing circuits to measure how well the
|
||||
* other ORs are running. */
|
||||
char *TestVia; /**< When reachability testing, use these as middle hop. */
|
||||
config_line_t *RendConfigLines; /**< List of configuration lines
|
||||
* for rendezvous services. */
|
||||
char *ContactInfo; /**< Contact info to be published in the directory. */
|
||||
|
Loading…
Reference in New Issue
Block a user