Browse Source

Accept hs descriptors even if we don't see an HSDir for us

The old behavior contributed to unreliability when hidden services and
hsdirs had different consensus versions, and so had different opinions
about who should be cacheing hsdir info.

Bugfix on 0.2.0.10-alpha; based on discussions surrounding bug 2732.
Nick Mathewson 13 years ago
parent
commit
7779c63e93
2 changed files with 7 additions and 5 deletions
  1. 7 0
      changes/bug2732-simple
  2. 0 5
      src/or/routerlist.c

+ 7 - 0
changes/bug2732-simple

@@ -0,0 +1,7 @@
+  o Minor bugfixes
+    - Do not reject hidden service descriptors simply because we don't
+      think we have not been assigned the HSDir flag.  Clients and
+      hidden services can have a more up-to-date view of the network
+      consensus, and if they think that the directory authorities
+      list us a HSDir, we might actually be one.  Related to bug 2732;
+      bugfix on 0.2.0.10-alpha.

+ 0 - 5
src/or/routerlist.c

@@ -5778,11 +5778,6 @@ hid_serv_acting_as_directory(void)
              "being a hidden service directory.");
     return 0;
   }
-  if (!rs->is_hs_dir) {
-    log_info(LD_REND, "We're not listed as a hidden service directory in "
-             "the consensus, so we won't be one.");
-    return 0;
-  }
   return 1;
 }