Commit 6ab10a54 authored by Nick Mathewson's avatar Nick Mathewson 🤹
Browse files

Make num_bridges_usable work properly.

My first implementation was broken, since it returned "whether there
is one bridge" rather than "how many bridges."

Also, the implementation for the n_options_out feature in
choose_random_entry_impl was completely broken due to a missing *.
parent 7aa21920
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -1013,7 +1013,7 @@ choose_random_entry_impl(cpath_build_state_t *state, int for_directory,
  const int num_needed = decide_num_guards(options, for_directory);

  if (n_options_out)
    n_options_out = 0;
    *n_options_out = 0;

  if (chosen_exit) {
    nodelist_add_node_and_family(exit_family, chosen_exit);
@@ -2215,8 +2215,8 @@ any_bridge_descriptors_known(void)
  return choose_random_entry(NULL) != NULL;
}

/** Return the number of bridges that have descriptors that
 * are marked with purpose 'bridge' and are running.
/** Return the number of bridges that have descriptors that are marked with
 * purpose 'bridge' and are running.
 */
static int
num_bridges_usable(void)
@@ -2224,7 +2224,7 @@ num_bridges_usable(void)
  int n_options = 0;
  tor_assert(get_options()->UseBridges);
  (void) choose_random_entry_impl(NULL, 0, 0, &n_options);
  return n_options == 1;
  return n_options;
}

/** Return 1 if there are any directory conns fetching bridge descriptors