Explorar el Código

Only retry connecting to configured bridges

After connectivity problems, only try connecting to bridges which
are currently configured; don't mark bridges which we previously
used but are no longer configured.  Fixes 14216.  Reported by
and fix provided by arma.
Matthew Finkel hace 10 años
padre
commit
4cb59ceb8e
Se han modificado 2 ficheros con 8 adiciones y 1 borrados
  1. 5 0
      changes/bug14216
  2. 3 1
      src/or/entrynodes.c

+ 5 - 0
changes/bug14216

@@ -0,0 +1,5 @@
+  o Minor bugfixes:
+    - When we are using bridges and we had a network connectivity problem, only
+      retry connecting to our currently configured bridges, not all bridges we
+      know about and remember using.
+      Fixes bug 14216; bugfix on tor-0.2.2.17-alpha. Patch from arma.

+ 3 - 1
src/or/entrynodes.c

@@ -2368,7 +2368,9 @@ entries_retry_helper(const or_options_t *options, int act)
   SMARTLIST_FOREACH_BEGIN(entry_guards, entry_guard_t *, e) {
       node = node_get_by_id(e->identity);
       if (node && node_has_descriptor(node) &&
-          node_is_bridge(node) == need_bridges) {
+          node_is_bridge(node) == need_bridges &&
+          (!need_bridges || (!e->bad_since &&
+                             node_is_a_configured_bridge(node)))) {
         any_known = 1;
         if (node->is_running)
           any_running = 1; /* some entry is both known and running */