commit f8248abbd6c5e04037cedee29a8867700617acde
Author: Nick Mathewson <nickm(a)torproject.org>
Date: Fri Apr 25 14:24:41 2014 -0400
Forbid TunneledDirConns 0 and PreferTunneledDirConns 0 if being a HS
Fixes bug 10849; bugfix on 0.2.1.1-alpha (I believe)
---
changes/bug10849_023 | 6 ++++++
src/or/config.c | 4 ++++
2 files changed, 10 insertions(+)
diff --git a/changes/bug10849_023 b/changes/bug10849_023
new file mode 100644
index 0000000..480dea3
--- /dev/null
+++ b/changes/bug10849_023
@@ -0,0 +1,6 @@
+ o Major bugfixes:
+ - When running a hidden service, do not allow TunneledDirConns 0;
+ this will keep the hidden service from running, and also
+ make it publish its descriptors directly over HTTP. Fixes bug 10849;
+ bugfix on 0.2.1.1-alpha.
+
diff --git a/src/or/config.c b/src/or/config.c
index d5c5689..f6db98e 100644
--- a/src/or/config.c
+++ b/src/or/config.c
@@ -4049,6 +4049,10 @@ options_validate(or_options_t *old_options, or_options_t *options,
REJECT("If you set UseBridges, you must specify at least one bridge.");
if (options->UseBridges && !options->TunnelDirConns)
REJECT("If you set UseBridges, you must set TunnelDirConns.");
+ if (options->RendConfigLines &&
+ (!options->TunnelDirConns || !options->PreferTunneledDirConns))
+ REJECT("If you are running a hidden service, you must set TunnelDirConns "
+ "and PreferTunneledDirConns");
for (cl = options->Bridges; cl; cl = cl->next) {
if (parse_bridge_line(cl->value, 1)<0)