[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Tor is out

Tor includes a new "TestingTorNetwork" config option to
make it easier to set up your own private Tor network; fixes several
big bugs with using more than one bridge relay; fixes a big bug with
offering hidden services quickly after Tor starts; and uses a better
API for reporting potential bootstrapping problems to the controller.

(Yes, the 0.2.0.x tree hasn't quite gone stable yet. But we wanted to
keep making progress while it finishes stabilizing.)


Changes in version - 2008-06-20
  o Major features:
    - New TestingTorNetwork config option to allow adjustment of
      previously constant values that, while reasonable, could slow
      bootstrapping. Implements proposal 135. Patch from Karsten.

  o Major bugfixes:
    - If you have more than one bridge but don't know their digests,
      you would only launch a request for the descriptor of the first one
      on your list. (Tor considered launching requests for the others, but
      found that it already had a connection on the way for $0000...0000
      so it didn't open another.) Bugfix on 0.2.0.x.
    - If you have more than one bridge but don't know their digests,
      and the connection to one of the bridges failed, you would cancel
      all pending bridge connections. (After all, they all have the
      same digest.) Bugfix on 0.2.0.x.
    - When establishing a hidden service, introduction points that
      originate from cannibalized circuits are completely ignored and not
      included in rendezvous service descriptors. This might be another
      reason for delay in making a hidden service available. Bugfix
      from long ago (0.0.9.x?)

  o Minor features:
    - Allow OpenSSL to use dynamic locks if it wants.
    - When building a consensus, do not include routers that are down.
      This will cut down 30% to 40% on consensus size. Implements
      proposal 138.
    - In directory authorities' approved-routers files, allow
      fingerprints with or without space.
    - Add a "GETINFO /status/bootstrap-phase" controller option, so the
      controller can query our current bootstrap state in case it attaches
      partway through and wants to catch up.
    - Send an initial "Starting" bootstrap status event, so we have a
      state to start out in.

  o Minor bugfixes:
    - Asking for a conditional consensus at .../consensus/<fingerprints>
      would crash a dirserver if it did not already have a
      consensus. Bugfix on
    - Clean up some macro/CPP interactions: some GCC versions don't like
      #if/#endif pairs inside macro arguments. Fixes bug 707. Bugfix on

  o Bootstrapping bugfixes (on
    - Directory authorities shouldn't complain about bootstrapping
      problems just because they do a lot of reachability testing and
      some of the connection attempts fail.
    - Start sending "count" and "recommendation" key/value pairs in
      bootstrap problem status events, so the controller can hear about
      problems even before Tor decides they're worth reporting for sure.
    - If you're using bridges, generate "bootstrap problem" warnings
      as soon as you run out of working bridges, rather than waiting
      for ten failures -- which will never happen if you have less than
      ten bridges.
    - If we close our OR connection because there's been a circuit
      pending on it for too long, we were telling our bootstrap status
      events "REASON=NONE". Now tell them "REASON=TIMEOUT".

Attachment: signature.asc
Description: Digital signature