summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2011-03-08 16:20:53 -0500
committerNick Mathewson <nickm@torproject.org>2011-03-08 16:20:53 -0500
commit63651b919183e1b0a126109646030aca975344bd (patch)
tree78738a62b5aedd17deffa6d4926b76f536c1198d /src
parentcb3c3c63cb5d0ee1a927dd9cc2fc67d3cc7bc88f (diff)
parent00446973f25227c0f805b7430e1ede6679e7ed16 (diff)
downloadtor-63651b919183e1b0a126109646030aca975344bd.tar.gz
tor-63651b919183e1b0a126109646030aca975344bd.zip
Merge remote branch 'origin/maint-0.2.2'
Trivial conflicts fixed in or.h Conflicts: src/or/or.h
Diffstat (limited to 'src')
-rw-r--r--src/or/config.c13
-rw-r--r--src/or/or.h5
2 files changed, 13 insertions, 5 deletions
diff --git a/src/or/config.c b/src/or/config.c
index 769831b2c4..79d222b38f 100644
--- a/src/or/config.c
+++ b/src/or/config.c
@@ -402,6 +402,7 @@ static config_var_t _option_vars[] = {
VAR("__HashedControlSessionPassword", LINELIST, HashedControlSessionPassword,
NULL),
V(MinUptimeHidServDirectoryV2, INTERVAL, "24 hours"),
+ V(_UsingTestNetworkDefaults, BOOL, "0"),
{ NULL, CONFIG_TYPE_OBSOLETE, 0, NULL }
};
@@ -427,6 +428,7 @@ static config_var_t testing_tor_network_defaults[] = {
V(TestingAuthDirTimeToLearnReachability, INTERVAL, "0 minutes"),
V(TestingEstimatedDescriptorPropagationTime, INTERVAL, "0 minutes"),
V(MinUptimeHidServDirectoryV2, INTERVAL, "0 minutes"),
+ V(_UsingTestNetworkDefaults, BOOL, "1"),
{ NULL, CONFIG_TYPE_OBSOLETE, 0, NULL }
};
#undef VAR
@@ -3728,7 +3730,7 @@ options_validate(or_options_t *old_options, or_options_t *options,
/* Keep changes to hard-coded values synchronous to man page and default
* values table. */
if (options->TestingV3AuthInitialVotingInterval != 30*60 &&
- !options->TestingTorNetwork) {
+ !options->TestingTorNetwork && !options->_UsingTestNetworkDefaults) {
REJECT("TestingV3AuthInitialVotingInterval may only be changed in testing "
"Tor networks!");
} else if (options->TestingV3AuthInitialVotingInterval < MIN_VOTE_INTERVAL) {
@@ -3739,7 +3741,8 @@ options_validate(or_options_t *old_options, or_options_t *options,
}
if (options->TestingV3AuthInitialVoteDelay != 5*60 &&
- !options->TestingTorNetwork) {
+ !options->TestingTorNetwork && !options->_UsingTestNetworkDefaults) {
+
REJECT("TestingV3AuthInitialVoteDelay may only be changed in testing "
"Tor networks!");
} else if (options->TestingV3AuthInitialVoteDelay < MIN_VOTE_SECONDS) {
@@ -3747,7 +3750,7 @@ options_validate(or_options_t *old_options, or_options_t *options,
}
if (options->TestingV3AuthInitialDistDelay != 5*60 &&
- !options->TestingTorNetwork) {
+ !options->TestingTorNetwork && !options->_UsingTestNetworkDefaults) {
REJECT("TestingV3AuthInitialDistDelay may only be changed in testing "
"Tor networks!");
} else if (options->TestingV3AuthInitialDistDelay < MIN_DIST_SECONDS) {
@@ -3762,7 +3765,7 @@ options_validate(or_options_t *old_options, or_options_t *options,
}
if (options->TestingAuthDirTimeToLearnReachability != 30*60 &&
- !options->TestingTorNetwork) {
+ !options->TestingTorNetwork && !options->_UsingTestNetworkDefaults) {
REJECT("TestingAuthDirTimeToLearnReachability may only be changed in "
"testing Tor networks!");
} else if (options->TestingAuthDirTimeToLearnReachability < 0) {
@@ -3772,7 +3775,7 @@ options_validate(or_options_t *old_options, or_options_t *options,
}
if (options->TestingEstimatedDescriptorPropagationTime != 10*60 &&
- !options->TestingTorNetwork) {
+ !options->TestingTorNetwork && !options->_UsingTestNetworkDefaults) {
REJECT("TestingEstimatedDescriptorPropagationTime may only be changed in "
"testing Tor networks!");
} else if (options->TestingEstimatedDescriptorPropagationTime < 0) {
diff --git a/src/or/or.h b/src/or/or.h
index e033a3e2a6..323c472e47 100644
--- a/src/or/or.h
+++ b/src/or/or.h
@@ -3014,6 +3014,11 @@ typedef struct {
/** For testing only: will go away in 0.2.3.x. */
int _UseFilteringSSLBufferevents;
+ /** Set to true if the TestingTorNetwork configuration option is set.
+ * This is used so that options_validate() has a chance to realize that
+ * the defaults have changed. */
+ int _UsingTestNetworkDefaults;
+
} or_options_t;
/** Persistent state for an onion router, as saved to disk. */