aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/or/config.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/or/config.c b/src/or/config.c
index aeff69feb..57165ce90 100644
--- a/src/or/config.c
+++ b/src/or/config.c
@@ -1942,9 +1942,8 @@ options_validate(or_options_t *old_options, or_options_t *options)
if (options->AuthoritativeDir && !options->ORPort)
REJECT("Running as authoritative directory, but no ORPort set.");
- if (options->AuthoritativeDir && options->ClientOnly) {
+ if (options->AuthoritativeDir && options->ClientOnly)
REJECT("Running as authoritative directory, but ClientOnly also set.");
- }
if (options->AuthoritativeDir && options->NoPublish)
REJECT("You cannot set both AuthoritativeDir and NoPublish.");
@@ -1963,12 +1962,10 @@ options_validate(or_options_t *old_options, or_options_t *options)
options->_AccountingMaxKB = 0;
}
- if (validate_ports_csv(options->FirewallPorts,
- "FirewallPorts") < 0)
+ if (validate_ports_csv(options->FirewallPorts, "FirewallPorts") < 0)
result = -1;
- if (validate_ports_csv(options->LongLivedPorts,
- "LongLivedPorts") < 0)
+ if (validate_ports_csv(options->LongLivedPorts, "LongLivedPorts") < 0)
result = -1;
if (options->FascistFirewall && !options->ReachableAddresses) {
@@ -2016,6 +2013,11 @@ options_validate(or_options_t *old_options, or_options_t *options)
}
}
+ if (options->ReachableAddresses && server_mode(options))
+ REJECT("Servers must be able to freely connect to the rest "
+ "of the Internet, so they must not set ReachableAddresses "
+ "or FascistFirewall.");
+
options->_AllowUnverified = 0;
if (options->AllowUnverifiedNodes) {
SMARTLIST_FOREACH(options->AllowUnverifiedNodes, const char *, cp, {