Browse Source

Merge branch 'bug21415_testfix_030'

Nick Mathewson 7 years ago
parent
commit
118d7018d0
2 changed files with 3 additions and 10 deletions
  1. 2 2
      src/or/bridges.c
  2. 1 8
      src/or/entrynodes.c

+ 2 - 2
src/or/bridges.c

@@ -218,7 +218,7 @@ get_configured_bridge_by_exact_addr_port_digest(const tor_addr_t *addr,
 
       if (digest && tor_memeq(bridge->identity, digest, DIGEST_LEN))
         return bridge;
-      else if (!digest)
+      else if (!digest || tor_digest_is_zero(bridge->identity))
         return bridge;
     }
 
@@ -297,7 +297,7 @@ learned_router_identity(const tor_addr_t *addr, uint16_t port,
   (void)ed_id;
   int learned = 0;
   bridge_info_t *bridge =
-    get_configured_bridge_by_addr_port_digest(addr, port, digest);
+    get_configured_bridge_by_exact_addr_port_digest(addr, port, digest);
   if (bridge && tor_digest_is_zero(bridge->identity)) {
     memcpy(bridge->identity, digest, DIGEST_LEN);
     learned = 1;

+ 1 - 8
src/or/entrynodes.c

@@ -3365,14 +3365,7 @@ guard_selection_have_enough_dir_info_to_build_circuits(guard_selection_t *gs)
    * guards in our list, since these are the guards that we typically use for
    * circuits. */
   num_primary_to_check = get_n_primary_guards_to_use(GUARD_USAGE_TRAFFIC);
-  /*
-    We had added this to try to guarantee that we'd not normally try a guard
-    without a descriptor, even if we didn't use the first guard.  But it led
-    to problems with the chutney bridges+ipv6-min test.  A better solution is
-    needed.
-
-    num_primary_to_check++;
-  */
+  num_primary_to_check++;
 
   SMARTLIST_FOREACH_BEGIN(gs->primary_entry_guards, entry_guard_t *, guard) {
     entry_guard_consider_retry(guard);