Sfoglia il codice sorgente

Merge branch 'maint-0.3.0'

Nick Mathewson 7 anni fa
parent
commit
90894c87a5
2 ha cambiato i file con 16 aggiunte e 0 eliminazioni
  1. 5 0
      changes/bug20509
  2. 11 0
      src/or/dirserv.c

+ 5 - 0
changes/bug20509

@@ -0,0 +1,5 @@
+  o Minor features:
+    - Directory authorities now reject relays running versions
+      0.2.9.1-alpha through 0.2.9.4-alpha, because those relays
+      suffer from bug 20499 and don't keep their consensus cache
+      up-to-date. Resolves ticket 20509.

+ 11 - 0
src/or/dirserv.c

@@ -398,6 +398,17 @@ dirserv_get_status_impl(const char *id_digest, const char *nickname,
     return FP_REJECT;
   }
 
+  /* Tor 0.2.9.x where x<5 suffers from bug #20499, where relays don't
+   * keep their consensus up to date so they make bad guards.
+   * The simple fix is to just drop them from the network. */
+  if (platform &&
+      tor_version_as_new_as(platform,"0.2.9.0-alpha") &&
+      !tor_version_as_new_as(platform,"0.2.9.5-alpha")) {
+    if (msg)
+      *msg = "Tor version contains bug 20499. Please upgrade!";
+    return FP_REJECT;
+  }
+
   status_by_digest = digestmap_get(fingerprint_list->status_by_digest,
                                    id_digest);
   if (status_by_digest)