Browse Source

actually retry bridges when your network goes away

Roger Dingledine 13 years ago
parent
commit
339993b409
2 changed files with 12 additions and 1 deletions
  1. 6 0
      changes/bug1981
  2. 6 1
      src/or/circuitbuild.c

+ 6 - 0
changes/bug1981

@@ -0,0 +1,6 @@
+  o Major bugfixes:
+    - When you use bridges and your network goes away and your bridges
+      get marked as down, recover when you attempt a new socks connection
+      (if the network is back) rather than waiting up to an hour to try
+      fetching new descriptors for your bridges. Bugfix on 0.2.0.3-alpha;
+      fixes bug 1981.

+ 6 - 1
src/or/circuitbuild.c

@@ -3162,6 +3162,10 @@ learned_bridge_descriptor(routerinfo_t *ri, int from_cache)
       add_an_entry_guard(ri, 1);
       log_notice(LD_DIR, "new bridge descriptor '%s' (%s)", ri->nickname,
                  from_cache ? "cached" : "fresh");
+      /* set entry->made_contact so if it goes down we don't drop it from
+       * our entry node list */
+      entry_guard_register_connect_status(ri->cache_info.identity_digest,
+                                          1, 0, now);
       if (first)
         routerlist_retry_directory_downloads(now);
     }
@@ -3227,7 +3231,8 @@ bridges_retry_helper(int act)
         }
       }
     });
-  log_debug(LD_DIR, "any_known %d, any_running %d", any_known, any_running);
+  log_debug(LD_DIR, "%d: any_known %d, any_running %d",
+            act, any_known, any_running);
   return any_known && !any_running;
 }