mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-10 13:13:44 +01:00
Merge branch 'maint-0.2.8'
This commit is contained in:
commit
eafcd7b0fc
5
changes/bug18481
Normal file
5
changes/bug18481
Normal file
@ -0,0 +1,5 @@
|
||||
o Minor bugfixes (client):
|
||||
- Turn all TestingClientBootstrap* into non-testing torrc options. This
|
||||
changes simply renames them by removing "Testing" in front of them and
|
||||
they do not require TestingTorNetwork to be enabled anymore. Fixes
|
||||
#18481; bugfix on tor-0.2.8.1-alpha.
|
4
changes/bug18716
Normal file
4
changes/bug18716
Normal file
@ -0,0 +1,4 @@
|
||||
o Minor bugfixes (assert, portability):
|
||||
- Fix an assertion failure in memarea.c on systems where "long" is
|
||||
shorter than the size of a pointer.
|
||||
Fixes bug 18716; bugfix on 0.2.1.1-alpha
|
100
doc/tor.1.txt
100
doc/tor.1.txt
@ -1558,6 +1558,45 @@ The following options are useful only for clients (that is, if
|
||||
Tor will use a default value chosen by the directory
|
||||
authorities. (Default: -1.)
|
||||
|
||||
[[ClientBootstrapConsensusAuthorityDownloadSchedule]] **ClientBootstrapConsensusAuthorityDownloadSchedule** __N__,__N__,__...__::
|
||||
Schedule for when clients should download consensuses from authorities
|
||||
if they are bootstrapping (that is, they don't have a usable, reasonably
|
||||
live consensus). Only used by clients fetching from a list of fallback
|
||||
directory mirrors. This schedule is advanced by (potentially concurrent)
|
||||
connection attempts, unlike other schedules, which are advanced by
|
||||
connection failures. (Default: 10, 11, 3600, 10800, 25200, 54000,
|
||||
111600, 262800)
|
||||
|
||||
[[ClientBootstrapConsensusFallbackDownloadSchedule]] **ClientBootstrapConsensusFallbackDownloadSchedule** __N__,__N__,__...__::
|
||||
Schedule for when clients should download consensuses from fallback
|
||||
directory mirrors if they are bootstrapping (that is, they don't have a
|
||||
usable, reasonably live consensus). Only used by clients fetching from a
|
||||
list of fallback directory mirrors. This schedule is advanced by
|
||||
(potentially concurrent) connection attempts, unlike other schedules,
|
||||
which are advanced by connection failures. (Default: 0, 1, 4, 11, 3600,
|
||||
10800, 25200, 54000, 111600, 262800)
|
||||
|
||||
[[ClientBootstrapConsensusAuthorityOnlyDownloadSchedule]] **ClientBootstrapConsensusAuthorityOnlyDownloadSchedule** __N__,__N__,__...__::
|
||||
Schedule for when clients should download consensuses from authorities
|
||||
if they are bootstrapping (that is, they don't have a usable, reasonably
|
||||
live consensus). Only used by clients which don't have or won't fetch
|
||||
from a list of fallback directory mirrors. This schedule is advanced by
|
||||
(potentially concurrent) connection attempts, unlike other schedules,
|
||||
which are advanced by connection failures. (Default: 0, 3, 7, 3600,
|
||||
10800, 25200, 54000, 111600, 262800)
|
||||
|
||||
[[ClientBootstrapConsensusMaxDownloadTries]] **ClientBootstrapConsensusMaxDownloadTries** __NUM__::
|
||||
Try this many times to download a consensus while bootstrapping using
|
||||
fallback directory mirrors before giving up. (Default: 7)
|
||||
|
||||
[[ClientBootstrapConsensusAuthorityOnlyMaxDownloadTries]] **ClientBootstrapConsensusAuthorityOnlyMaxDownloadTries** __NUM__::
|
||||
Try this many times to download a consensus while bootstrapping using
|
||||
authorities before giving up. (Default: 4)
|
||||
|
||||
[[ClientBootstrapConsensusMaxInProgressTries]] **ClientBootstrapConsensusMaxInProgressTries** __NUM__::
|
||||
Try this many simultaneous connections to download a consensus before
|
||||
waiting for one to complete, timeout, or error out. (Default: 4)
|
||||
|
||||
SERVER OPTIONS
|
||||
--------------
|
||||
|
||||
@ -2347,6 +2386,14 @@ The following options are used for running a testing Tor network.
|
||||
AssumeReachable 1
|
||||
AuthDirMaxServersPerAddr 0
|
||||
AuthDirMaxServersPerAuthAddr 0
|
||||
ClientBootstrapConsensusAuthorityDownloadSchedule 0, 2,
|
||||
4 (for 40 seconds), 8, 16, 32, 60
|
||||
ClientBootstrapConsensusFallbackDownloadSchedule 0, 1,
|
||||
4 (for 40 seconds), 8, 16, 32, 60
|
||||
ClientBootstrapConsensusAuthorityOnlyDownloadSchedule 0, 1,
|
||||
4 (for 40 seconds), 8, 16, 32, 60
|
||||
ClientBootstrapConsensusMaxDownloadTries 80
|
||||
ClientBootstrapConsensusAuthorityOnlyMaxDownloadTries 80
|
||||
ClientDNSRejectInternalAddresses 0
|
||||
ClientRejectInternalAddresses 0
|
||||
CountPrivateBandwidth 1
|
||||
@ -2365,18 +2412,10 @@ The following options are used for running a testing Tor network.
|
||||
TestingClientDownloadSchedule 0, 0, 5, 10, 15, 20, 30, 60
|
||||
TestingServerConsensusDownloadSchedule 0, 0, 5, 10, 15, 20, 30, 60
|
||||
TestingClientConsensusDownloadSchedule 0, 0, 5, 10, 15, 20, 30, 60
|
||||
TestingClientBootstrapConsensusAuthorityDownloadSchedule 0, 2,
|
||||
4 (for 40 seconds), 8, 16, 32, 60
|
||||
TestingClientBootstrapConsensusFallbackDownloadSchedule 0, 1,
|
||||
4 (for 40 seconds), 8, 16, 32, 60
|
||||
TestingClientBootstrapConsensusAuthorityOnlyDownloadSchedule 0, 1,
|
||||
4 (for 40 seconds), 8, 16, 32, 60
|
||||
TestingBridgeDownloadSchedule 60, 30, 30, 60
|
||||
TestingClientMaxIntervalWithoutRequest 5 seconds
|
||||
TestingDirConnectionMaxStall 30 seconds
|
||||
TestingConsensusMaxDownloadTries 80
|
||||
TestingClientBootstrapConsensusMaxDownloadTries 80
|
||||
TestingClientBootstrapConsensusAuthorityOnlyMaxDownloadTries 80
|
||||
TestingDescriptorMaxDownloadTries 80
|
||||
TestingMicrodescMaxDownloadTries 80
|
||||
TestingCertMaxDownloadTries 80
|
||||
@ -2437,36 +2476,6 @@ The following options are used for running a testing Tor network.
|
||||
requires that **TestingTorNetwork** is set. (Default: 0, 0, 60, 300, 600,
|
||||
1800, 3600, 3600, 3600, 10800, 21600, 43200)
|
||||
|
||||
[[TestingClientBootstrapConsensusAuthorityDownloadSchedule]] **TestingClientBootstrapConsensusAuthorityDownloadSchedule** __N__,__N__,__...__::
|
||||
Schedule for when clients should download consensuses from authorities if
|
||||
they are bootstrapping (that is, they don't have a usable, reasonably live
|
||||
consensus). Only used by clients fetching from a list of fallback
|
||||
directory mirrors. This schedule is advanced by (potentially concurrent)
|
||||
connection attempts, unlike other schedules, which are advanced by
|
||||
connection failures. Changing this schedule requires that
|
||||
**TestingTorNetwork** is set. (Default: 10, 11, 3600, 10800, 25200, 54000,
|
||||
111600, 262800)
|
||||
|
||||
[[TestingClientBootstrapConsensusFallbackDownloadSchedule]] **TestingClientBootstrapConsensusFallbackDownloadSchedule** __N__,__N__,__...__::
|
||||
Schedule for when clients should download consensuses from fallback
|
||||
directory mirrors if they are bootstrapping (that is, they don't have a
|
||||
usable, reasonably live consensus). Only used by clients fetching from a
|
||||
list of fallback directory mirrors. This schedule is advanced by
|
||||
(potentially concurrent) connection attempts, unlike other schedules, which
|
||||
are advanced by connection failures. Changing this schedule requires that
|
||||
**TestingTorNetwork** is set. (Default: 0, 1, 4, 11, 3600, 10800, 25200,
|
||||
54000, 111600, 262800)
|
||||
|
||||
[[TestingClientBootstrapConsensusAuthorityOnlyDownloadSchedule]] **TestingClientBootstrapConsensusAuthorityOnlyDownloadSchedule** __N__,__N__,__...__::
|
||||
Schedule for when clients should download consensuses from authorities if
|
||||
they are bootstrapping (that is, they don't have a usable, reasonably live
|
||||
consensus). Only used by clients which don't have or won't fetch from a
|
||||
list of fallback directory mirrors. This schedule is advanced by
|
||||
(potentially concurrent) connection attempts, unlike other schedules,
|
||||
which are advanced by connection failures. Changing this schedule requires
|
||||
that **TestingTorNetwork** is set. (Default: 0, 3, 7, 3600, 10800, 25200,
|
||||
54000, 111600, 262800)
|
||||
|
||||
[[TestingBridgeDownloadSchedule]] **TestingBridgeDownloadSchedule** __N__,__N__,__...__::
|
||||
Schedule for when clients should download bridge descriptors. Changing this
|
||||
requires that **TestingTorNetwork** is set. (Default: 3600, 900, 900, 3600)
|
||||
@ -2486,21 +2495,6 @@ The following options are used for running a testing Tor network.
|
||||
Try this many times to download a consensus before giving up. Changing
|
||||
this requires that **TestingTorNetwork** is set. (Default: 8)
|
||||
|
||||
[[TestingClientBootstrapConsensusMaxDownloadTries]] **TestingClientBootstrapConsensusMaxDownloadTries** __NUM__::
|
||||
Try this many times to download a consensus while bootstrapping using
|
||||
fallback directory mirrors before giving up. Changing this requires that
|
||||
**TestingTorNetwork** is set. (Default: 7)
|
||||
|
||||
[[TestingClientBootstrapConsensusAuthorityOnlyMaxDownloadTries]] **TestingClientBootstrapConsensusAuthorityOnlyMaxDownloadTries** __NUM__::
|
||||
Try this many times to download a consensus while bootstrapping using
|
||||
authorities before giving up. Changing this requires that
|
||||
**TestingTorNetwork** is set. (Default: 4)
|
||||
|
||||
[[TestingClientBootstrapConsensusMaxInProgressTries]] **TestingClientBootstrapConsensusMaxInProgressTries** __NUM__::
|
||||
Try this many simultaneous connections to download a consensus before
|
||||
waiting for one to complete, timeout, or error out. Changing this
|
||||
requires that **TestingTorNetwork** is set. (Default: 4)
|
||||
|
||||
[[TestingDescriptorMaxDownloadTries]] **TestingDescriptorMaxDownloadTries** __NUM__::
|
||||
Try this often to download a server descriptor before giving up.
|
||||
Changing this requires that **TestingTorNetwork** is set. (Default: 8)
|
||||
|
@ -24,9 +24,9 @@
|
||||
/** A value which, when masked out of a pointer, produces a maximally aligned
|
||||
* pointer. */
|
||||
#if MEMAREA_ALIGN == 4
|
||||
#define MEMAREA_ALIGN_MASK 3lu
|
||||
#define MEMAREA_ALIGN_MASK ((uintptr_t)3)
|
||||
#elif MEMAREA_ALIGN == 8
|
||||
#define MEMAREA_ALIGN_MASK 7lu
|
||||
#define MEMAREA_ALIGN_MASK ((uintptr_t)7)
|
||||
#else
|
||||
#error "void* is neither 4 nor 8 bytes long. I don't know how to align stuff."
|
||||
#endif
|
||||
|
@ -480,7 +480,7 @@ static config_var_t option_vars_[] = {
|
||||
V(TestingClientConsensusDownloadSchedule, CSV_INTERVAL, "0, 0, 60, "
|
||||
"300, 600, 1800, 3600, 3600, 3600, "
|
||||
"10800, 21600, 43200"),
|
||||
/* With the TestingClientBootstrapConsensus*Download* below:
|
||||
/* With the ClientBootstrapConsensus*Download* below:
|
||||
* Clients with only authorities will try:
|
||||
* - 3 authorities over 10 seconds, then wait 60 minutes.
|
||||
* Clients with authorities and fallbacks will try:
|
||||
@ -493,27 +493,27 @@ static config_var_t option_vars_[] = {
|
||||
*
|
||||
* When clients have authorities and fallbacks available, they use these
|
||||
* schedules: (we stagger the times to avoid thundering herds) */
|
||||
V(TestingClientBootstrapConsensusAuthorityDownloadSchedule, CSV_INTERVAL,
|
||||
V(ClientBootstrapConsensusAuthorityDownloadSchedule, CSV_INTERVAL,
|
||||
"10, 11, 3600, 10800, 25200, 54000, 111600, 262800" /* 3 days + 1 hour */),
|
||||
V(TestingClientBootstrapConsensusFallbackDownloadSchedule, CSV_INTERVAL,
|
||||
V(ClientBootstrapConsensusFallbackDownloadSchedule, CSV_INTERVAL,
|
||||
"0, 1, 4, 11, 3600, 10800, 25200, 54000, 111600, 262800"),
|
||||
/* When clients only have authorities available, they use this schedule: */
|
||||
V(TestingClientBootstrapConsensusAuthorityOnlyDownloadSchedule, CSV_INTERVAL,
|
||||
V(ClientBootstrapConsensusAuthorityOnlyDownloadSchedule, CSV_INTERVAL,
|
||||
"0, 3, 7, 3600, 10800, 25200, 54000, 111600, 262800"),
|
||||
/* We don't want to overwhelm slow networks (or mirrors whose replies are
|
||||
* blocked), but we also don't want to fail if only some mirrors are
|
||||
* blackholed. Clients will try 3 directories simultaneously.
|
||||
* (Relays never use simultaneous connections.) */
|
||||
V(TestingClientBootstrapConsensusMaxInProgressTries, UINT, "3"),
|
||||
V(ClientBootstrapConsensusMaxInProgressTries, UINT, "3"),
|
||||
V(TestingBridgeDownloadSchedule, CSV_INTERVAL, "3600, 900, 900, 3600"),
|
||||
V(TestingClientMaxIntervalWithoutRequest, INTERVAL, "10 minutes"),
|
||||
V(TestingDirConnectionMaxStall, INTERVAL, "5 minutes"),
|
||||
V(TestingConsensusMaxDownloadTries, UINT, "8"),
|
||||
/* Since we try connections rapidly and simultaneously, we can afford
|
||||
* to give up earlier. (This protects against overloading directories.) */
|
||||
V(TestingClientBootstrapConsensusMaxDownloadTries, UINT, "7"),
|
||||
V(ClientBootstrapConsensusMaxDownloadTries, UINT, "7"),
|
||||
/* We want to give up much earlier if we're only using authorities. */
|
||||
V(TestingClientBootstrapConsensusAuthorityOnlyMaxDownloadTries, UINT, "4"),
|
||||
V(ClientBootstrapConsensusAuthorityOnlyMaxDownloadTries, UINT, "4"),
|
||||
V(TestingDescriptorMaxDownloadTries, UINT, "8"),
|
||||
V(TestingMicrodescMaxDownloadTries, UINT, "8"),
|
||||
V(TestingCertMaxDownloadTries, UINT, "8"),
|
||||
@ -537,6 +537,14 @@ static const config_var_t testing_tor_network_defaults[] = {
|
||||
V(AssumeReachable, BOOL, "1"),
|
||||
V(AuthDirMaxServersPerAddr, UINT, "0"),
|
||||
V(AuthDirMaxServersPerAuthAddr,UINT, "0"),
|
||||
V(ClientBootstrapConsensusAuthorityDownloadSchedule, CSV_INTERVAL,
|
||||
"0, 2, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 8, 16, 32, 60"),
|
||||
V(ClientBootstrapConsensusFallbackDownloadSchedule, CSV_INTERVAL,
|
||||
"0, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 8, 16, 32, 60"),
|
||||
V(ClientBootstrapConsensusAuthorityOnlyDownloadSchedule, CSV_INTERVAL,
|
||||
"0, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 8, 16, 32, 60"),
|
||||
V(ClientBootstrapConsensusMaxDownloadTries, UINT, "80"),
|
||||
V(ClientBootstrapConsensusAuthorityOnlyMaxDownloadTries, UINT, "80"),
|
||||
V(ClientDNSRejectInternalAddresses, BOOL,"0"),
|
||||
V(ClientRejectInternalAddresses, BOOL, "0"),
|
||||
V(CountPrivateBandwidth, BOOL, "1"),
|
||||
@ -560,18 +568,10 @@ static const config_var_t testing_tor_network_defaults[] = {
|
||||
"15, 20, 30, 60"),
|
||||
V(TestingClientConsensusDownloadSchedule, CSV_INTERVAL, "0, 0, 5, 10, "
|
||||
"15, 20, 30, 60"),
|
||||
V(TestingClientBootstrapConsensusAuthorityDownloadSchedule, CSV_INTERVAL,
|
||||
"0, 2, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 8, 16, 32, 60"),
|
||||
V(TestingClientBootstrapConsensusFallbackDownloadSchedule, CSV_INTERVAL,
|
||||
"0, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 8, 16, 32, 60"),
|
||||
V(TestingClientBootstrapConsensusAuthorityOnlyDownloadSchedule, CSV_INTERVAL,
|
||||
"0, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 8, 16, 32, 60"),
|
||||
V(TestingBridgeDownloadSchedule, CSV_INTERVAL, "60, 30, 30, 60"),
|
||||
V(TestingClientMaxIntervalWithoutRequest, INTERVAL, "5 seconds"),
|
||||
V(TestingDirConnectionMaxStall, INTERVAL, "30 seconds"),
|
||||
V(TestingConsensusMaxDownloadTries, UINT, "80"),
|
||||
V(TestingClientBootstrapConsensusMaxDownloadTries, UINT, "80"),
|
||||
V(TestingClientBootstrapConsensusAuthorityOnlyMaxDownloadTries, UINT, "80"),
|
||||
V(TestingDescriptorMaxDownloadTries, UINT, "80"),
|
||||
V(TestingMicrodescMaxDownloadTries, UINT, "80"),
|
||||
V(TestingCertMaxDownloadTries, UINT, "80"),
|
||||
@ -3864,16 +3864,10 @@ options_validate(or_options_t *old_options, or_options_t *options,
|
||||
CHECK_DEFAULT(TestingClientDownloadSchedule);
|
||||
CHECK_DEFAULT(TestingServerConsensusDownloadSchedule);
|
||||
CHECK_DEFAULT(TestingClientConsensusDownloadSchedule);
|
||||
CHECK_DEFAULT(TestingClientBootstrapConsensusAuthorityDownloadSchedule);
|
||||
CHECK_DEFAULT(TestingClientBootstrapConsensusFallbackDownloadSchedule);
|
||||
CHECK_DEFAULT(TestingClientBootstrapConsensusAuthorityOnlyDownloadSchedule);
|
||||
CHECK_DEFAULT(TestingBridgeDownloadSchedule);
|
||||
CHECK_DEFAULT(TestingClientMaxIntervalWithoutRequest);
|
||||
CHECK_DEFAULT(TestingDirConnectionMaxStall);
|
||||
CHECK_DEFAULT(TestingConsensusMaxDownloadTries);
|
||||
CHECK_DEFAULT(TestingClientBootstrapConsensusMaxDownloadTries);
|
||||
CHECK_DEFAULT(TestingClientBootstrapConsensusAuthorityOnlyMaxDownloadTries);
|
||||
CHECK_DEFAULT(TestingClientBootstrapConsensusMaxInProgressTries);
|
||||
CHECK_DEFAULT(TestingDescriptorMaxDownloadTries);
|
||||
CHECK_DEFAULT(TestingMicrodescMaxDownloadTries);
|
||||
CHECK_DEFAULT(TestingCertMaxDownloadTries);
|
||||
@ -3953,33 +3947,33 @@ options_validate(or_options_t *old_options, or_options_t *options,
|
||||
COMPLAIN("TestingConsensusMaxDownloadTries is insanely high.");
|
||||
}
|
||||
|
||||
if (options->TestingClientBootstrapConsensusMaxDownloadTries < 2) {
|
||||
REJECT("TestingClientBootstrapConsensusMaxDownloadTries must be greater "
|
||||
if (options->ClientBootstrapConsensusMaxDownloadTries < 2) {
|
||||
REJECT("ClientBootstrapConsensusMaxDownloadTries must be greater "
|
||||
"than 2."
|
||||
);
|
||||
} else if (options->TestingClientBootstrapConsensusMaxDownloadTries > 800) {
|
||||
COMPLAIN("TestingClientBootstrapConsensusMaxDownloadTries is insanely "
|
||||
} else if (options->ClientBootstrapConsensusMaxDownloadTries > 800) {
|
||||
COMPLAIN("ClientBootstrapConsensusMaxDownloadTries is insanely "
|
||||
"high.");
|
||||
}
|
||||
|
||||
if (options->TestingClientBootstrapConsensusAuthorityOnlyMaxDownloadTries
|
||||
if (options->ClientBootstrapConsensusAuthorityOnlyMaxDownloadTries
|
||||
< 2) {
|
||||
REJECT("TestingClientBootstrapConsensusAuthorityOnlyMaxDownloadTries must "
|
||||
REJECT("ClientBootstrapConsensusAuthorityOnlyMaxDownloadTries must "
|
||||
"be greater than 2."
|
||||
);
|
||||
} else if (
|
||||
options->TestingClientBootstrapConsensusAuthorityOnlyMaxDownloadTries
|
||||
options->ClientBootstrapConsensusAuthorityOnlyMaxDownloadTries
|
||||
> 800) {
|
||||
COMPLAIN("TestingClientBootstrapConsensusAuthorityOnlyMaxDownloadTries is "
|
||||
COMPLAIN("ClientBootstrapConsensusAuthorityOnlyMaxDownloadTries is "
|
||||
"insanely high.");
|
||||
}
|
||||
|
||||
if (options->TestingClientBootstrapConsensusMaxInProgressTries < 1) {
|
||||
REJECT("TestingClientBootstrapConsensusMaxInProgressTries must be greater "
|
||||
if (options->ClientBootstrapConsensusMaxInProgressTries < 1) {
|
||||
REJECT("ClientBootstrapConsensusMaxInProgressTries must be greater "
|
||||
"than 0.");
|
||||
} else if (options->TestingClientBootstrapConsensusMaxInProgressTries
|
||||
} else if (options->ClientBootstrapConsensusMaxInProgressTries
|
||||
> 100) {
|
||||
COMPLAIN("TestingClientBootstrapConsensusMaxInProgressTries is insanely "
|
||||
COMPLAIN("ClientBootstrapConsensusMaxInProgressTries is insanely "
|
||||
"high.");
|
||||
}
|
||||
|
||||
|
@ -3896,17 +3896,17 @@ find_dl_schedule(download_status_t *dls, const or_options_t *options)
|
||||
if (!use_fallbacks) {
|
||||
/* A bootstrapping client without extra fallback directories */
|
||||
return
|
||||
options->TestingClientBootstrapConsensusAuthorityOnlyDownloadSchedule;
|
||||
options->ClientBootstrapConsensusAuthorityOnlyDownloadSchedule;
|
||||
} else if (dls->want_authority) {
|
||||
/* A bootstrapping client with extra fallback directories, but
|
||||
* connecting to an authority */
|
||||
return
|
||||
options->TestingClientBootstrapConsensusAuthorityDownloadSchedule;
|
||||
options->ClientBootstrapConsensusAuthorityDownloadSchedule;
|
||||
} else {
|
||||
/* A bootstrapping client connecting to extra fallback directories
|
||||
*/
|
||||
return
|
||||
options->TestingClientBootstrapConsensusFallbackDownloadSchedule;
|
||||
options->ClientBootstrapConsensusFallbackDownloadSchedule;
|
||||
}
|
||||
} else {
|
||||
return options->TestingClientConsensusDownloadSchedule;
|
||||
|
@ -802,10 +802,10 @@ consensus_max_download_tries(const or_options_t *options,
|
||||
|
||||
if (we_are_bootstrapping) {
|
||||
if (use_fallbacks) {
|
||||
return options->TestingClientBootstrapConsensusMaxDownloadTries;
|
||||
return options->ClientBootstrapConsensusMaxDownloadTries;
|
||||
} else {
|
||||
return
|
||||
options->TestingClientBootstrapConsensusAuthorityOnlyMaxDownloadTries;
|
||||
options->ClientBootstrapConsensusAuthorityOnlyMaxDownloadTries;
|
||||
}
|
||||
}
|
||||
|
||||
@ -850,7 +850,7 @@ update_consensus_networkstatus_downloads(time_t now)
|
||||
/* Check if we already have enough connections in progress */
|
||||
if (we_are_bootstrapping) {
|
||||
max_in_progress_conns =
|
||||
options->TestingClientBootstrapConsensusMaxInProgressTries;
|
||||
options->ClientBootstrapConsensusMaxInProgressTries;
|
||||
}
|
||||
if (connection_dir_count_by_purpose_and_resource(
|
||||
DIR_PURPOSE_FETCH_CONSENSUS,
|
||||
|
12
src/or/or.h
12
src/or/or.h
@ -4193,7 +4193,7 @@ typedef struct {
|
||||
* This schedule is incremented by (potentially concurrent) connection
|
||||
* attempts, unlike other schedules, which are incremented by connection
|
||||
* failures. Only altered on testing networks. */
|
||||
smartlist_t *TestingClientBootstrapConsensusAuthorityDownloadSchedule;
|
||||
smartlist_t *ClientBootstrapConsensusAuthorityDownloadSchedule;
|
||||
|
||||
/** Schedule for when clients should download consensuses from fallback
|
||||
* directory mirrors if they are bootstrapping (that is, they don't have a
|
||||
@ -4203,7 +4203,7 @@ typedef struct {
|
||||
* This schedule is incremented by (potentially concurrent) connection
|
||||
* attempts, unlike other schedules, which are incremented by connection
|
||||
* failures. Only altered on testing networks. */
|
||||
smartlist_t *TestingClientBootstrapConsensusFallbackDownloadSchedule;
|
||||
smartlist_t *ClientBootstrapConsensusFallbackDownloadSchedule;
|
||||
|
||||
/** Schedule for when clients should download consensuses from authorities
|
||||
* if they are bootstrapping (that is, they don't have a usable, reasonably
|
||||
@ -4213,7 +4213,7 @@ typedef struct {
|
||||
* This schedule is incremented by (potentially concurrent) connection
|
||||
* attempts, unlike other schedules, which are incremented by connection
|
||||
* failures. Only altered on testing networks. */
|
||||
smartlist_t *TestingClientBootstrapConsensusAuthorityOnlyDownloadSchedule;
|
||||
smartlist_t *ClientBootstrapConsensusAuthorityOnlyDownloadSchedule;
|
||||
|
||||
/** Schedule for when clients should download bridge descriptors. Only
|
||||
* altered on testing networks. */
|
||||
@ -4235,17 +4235,17 @@ typedef struct {
|
||||
/** How many times will a client try to fetch a consensus while
|
||||
* bootstrapping using a list of fallback directories, before it gives up?
|
||||
* Only altered on testing networks. */
|
||||
int TestingClientBootstrapConsensusMaxDownloadTries;
|
||||
int ClientBootstrapConsensusMaxDownloadTries;
|
||||
|
||||
/** How many times will a client try to fetch a consensus while
|
||||
* bootstrapping using only a list of authorities, before it gives up?
|
||||
* Only altered on testing networks. */
|
||||
int TestingClientBootstrapConsensusAuthorityOnlyMaxDownloadTries;
|
||||
int ClientBootstrapConsensusAuthorityOnlyMaxDownloadTries;
|
||||
|
||||
/** How many simultaneous in-progress connections will we make when trying
|
||||
* to fetch a consensus before we wait for one to complete, timeout, or
|
||||
* error out? Only altered on testing networks. */
|
||||
int TestingClientBootstrapConsensusMaxInProgressTries;
|
||||
int ClientBootstrapConsensusMaxInProgressTries;
|
||||
|
||||
/** How many times will we try to download a router's descriptor before
|
||||
* giving up? Only altered on testing networks. */
|
||||
|
@ -307,9 +307,9 @@ fixed_get_uname(void)
|
||||
}
|
||||
|
||||
#define TEST_OPTIONS_OLD_VALUES "TestingV3AuthInitialVotingInterval 1800\n" \
|
||||
"TestingClientBootstrapConsensusMaxDownloadTries 7\n" \
|
||||
"TestingClientBootstrapConsensusAuthorityOnlyMaxDownloadTries 4\n" \
|
||||
"TestingClientBootstrapConsensusMaxInProgressTries 3\n" \
|
||||
"ClientBootstrapConsensusMaxDownloadTries 7\n" \
|
||||
"ClientBootstrapConsensusAuthorityOnlyMaxDownloadTries 4\n" \
|
||||
"ClientBootstrapConsensusMaxInProgressTries 3\n" \
|
||||
"TestingV3AuthInitialVoteDelay 300\n" \
|
||||
"TestingV3AuthInitialDistDelay 300\n" \
|
||||
"TestingClientMaxIntervalWithoutRequest 600\n" \
|
||||
|
Loading…
Reference in New Issue
Block a user