From 26c344a563610fcd293cd82bbb0b08dce737e5f3 Mon Sep 17 00:00:00 2001 From: David Goulet Date: Tue, 28 Apr 2015 14:22:49 -0400 Subject: [PATCH] Revert "Remove obsolete workaround in dirserv_thinks_router_is_hs_dir()" Fixes #15850, part of #15801. Change file is added by this commit. The original comment in the reverted commit is removed because right now we *need* a DirPort until #15849 is implemented so no doubt nor confusion there anymore. This reverts commit 80bed1ac96a3035f8c55ddced5528f0d7d16d386. Signed-off-by: David Goulet --- changes/bug15850 | 4 ++++ src/or/dirserv.c | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) create mode 100644 changes/bug15850 diff --git a/changes/bug15850 b/changes/bug15850 new file mode 100644 index 0000000000..48a7c7bdd7 --- /dev/null +++ b/changes/bug15850 @@ -0,0 +1,4 @@ + o Major bugfix + - Revert commit that made directory authority assign the HSDir flag to + relay without a DirPort which is bad because relay can't handle + BEGIN_DIR cells. Fixes #15850. Bugfix on tor-0.2.6.3-alpha; diff --git a/src/or/dirserv.c b/src/or/dirserv.c index e5a5b54303..a024be8342 100644 --- a/src/or/dirserv.c +++ b/src/or/dirserv.c @@ -1305,7 +1305,7 @@ dirserv_thinks_router_is_hs_dir(const routerinfo_t *router, else uptime = real_uptime(router, now); - return (router->wants_to_be_hs_dir && + return (router->wants_to_be_hs_dir && router->dir_port && uptime >= get_options()->MinUptimeHidServDirectoryV2 && router_is_active(router, node, now)); }