Commit 06047bce authored by Roger Dingledine's avatar Roger Dingledine
Browse files

Avoid going directly to the directory authorities even if you're a

relay, if you haven't found yourself reachable yet or if you've
decided not to advertise your dirport yet. Addresses bug 556.


svn:r13172
parent 200ce203
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
Changes in version 0.2.0.18-alpha - 2008-01-??
  o Major features:
    - Avoid going directly to the directory authorities even if you're a
      relay, if you haven't found yourself reachable yet or if you've
      decided not to advertise your dirport yet. Addresses bug 556.


Changes in version 0.2.0.17-alpha - 2008-01-17
  o Compile fixes:
    - Make the tor-gencert man page get included correctly in the tarball.
+5 −3
Original line number Diff line number Diff line
@@ -1116,16 +1116,18 @@ dirserv_dump_directory_to_string(char **dir_out,
int
directory_fetches_from_authorities(or_options_t *options)
{
  routerinfo_t *me;
  if (options->FetchDirInfoEarly)
    return 1;
  if (options->DirPort == 0)
    return 0;
  if (options->BridgeRelay == 1)
    return 0;
  /* XXX if dirport not advertised, return 0 too */
  if (!server_mode(options))
  if (!server_mode(options) || !advertised_server_mode())
    return 0;
  /* XXX if orport or dirport not reachable, return 0 too */
  me = router_get_my_routerinfo();
  if (!me || !me->dir_port)
    return 0; /* if dirport not advertised, return 0 too */
  return 1;
}