[tor-commits] [tor/maint-0.4.5] relay: No longer test dirport reachability for authorities

ahf at torproject.org ahf at torproject.org
Mon Feb 22 19:13:46 UTC 2021


commit 8a8045c788b6883751b5ecbfbd3de4da0dfd313a
Author: Roger Dingledine <arma at torproject.org>
Date:   Wed Feb 10 03:10:12 2021 -0500

    relay: No longer test dirport reachability for authorities
    
    Now that exit relays don't allow exit connections to directory authority
    DirPorts, the follow-up step is to make directory authorities stop doing
    DirPort reachability checks.
    
    Fixes #40287
    
    Signed-off-by: David Goulet <dgoulet at torproject.org>
---
 changes/bug40287             | 4 ++++
 src/feature/relay/selftest.c | 4 ++++
 2 files changed, 8 insertions(+)

diff --git a/changes/bug40287 b/changes/bug40287
new file mode 100644
index 0000000000..5a9c899d52
--- /dev/null
+++ b/changes/bug40287
@@ -0,0 +1,4 @@
+  o Minor bugfixes (directory authority):
+    - Now that exit relays don't allow exit connections to directory authority
+      DirPorts (network reentry), disable authorities' reachability self test
+      on the DirPort. Fixes bug 40287; bugfix on 0.4.5.5-rc.
diff --git a/src/feature/relay/selftest.c b/src/feature/relay/selftest.c
index 86b1533be1..46b4b20ffc 100644
--- a/src/feature/relay/selftest.c
+++ b/src/feature/relay/selftest.c
@@ -31,6 +31,8 @@
 
 #include "feature/control/control_events.h"
 
+#include "feature/dirauth/authmode.h"
+
 #include "feature/dirclient/dirclient.h"
 #include "feature/dircommon/directory.h"
 
@@ -142,12 +144,14 @@ router_orport_seems_reachable(const or_options_t *options,
  *   - we've seen a successful reachability check, or
  *   - there is no DirPort set, or
  *   - AssumeReachable is set, or
+ *   - We're a dir auth (see ticket #40287), or
  *   - the network is disabled.
  */
 int
 router_dirport_seems_reachable(const or_options_t *options)
 {
   int reach_checks_disabled = router_reachability_checks_disabled(options) ||
+                              authdir_mode(options) ||
                               !options->DirPort_set;
   return reach_checks_disabled ||
          can_reach_dir_port;





More information about the tor-commits mailing list