1. 31 Aug, 2009 2 commits
    • Roger Dingledine's avatar
      Add getinfo accepted-server-descriptor. Clean spec. · 075c0040
      Roger Dingledine authored
      Add a "getinfo status/accepted-server-descriptor" controller
      command, which is the recommended way for controllers to learn
      whether our server descriptor has been successfully received by at
      least on directory authority. Un-recommend good-server-descriptor
      getinfo and status events until we have a better design for them.
      075c0040
    • Roger Dingledine's avatar
      Only send reachability status events on overall success/failure · 4c297f74
      Roger Dingledine authored
      We were telling the controller about CHECKING_REACHABILITY and
      REACHABILITY_FAILED status events whenever we launch a testing
      circuit or notice that one has failed. Instead, only tell the
      controller when we want to inform the user of overall success or
      overall failure. Bugfix on 0.1.2.6-alpha. Fixes bug 1075. Reported
      by SwissTorExit.
      4c297f74
  2. 28 Aug, 2009 2 commits
  3. 26 Aug, 2009 1 commit
  4. 20 Aug, 2009 1 commit
    • Nick Mathewson's avatar
      Fix a rare infinite-recursion bug when shutting down. · 9d118277
      Nick Mathewson authored
      Once we had called log_free_all(), anything that tried to log a
      message (like a failed tor_assert()) would fail like this:
      
         1. The logging call eventually invokes the _log() function.
         2. _log() calls tor_mutex_lock(log_mutex).
         3. tor_mutex_lock(m) calls tor_assert(m).
         4. Since we freed the log_mutex, tor_assert() fails, and tries to
            log its failure.
         5. GOTO 1.
      
      Now we allocate the mutex statically, and never destroy it on
      shutdown.
      
      Bugfix on 0.2.0.16-alpha, which introduced the log mutex.
      
      This bug was found by Matt Edman.
      9d118277
  5. 11 Aug, 2009 1 commit
  6. 10 Aug, 2009 2 commits
  7. 29 Jul, 2009 1 commit
  8. 28 Jul, 2009 6 commits
  9. 24 Jul, 2009 2 commits
  10. 07 Jul, 2009 1 commit
  11. 02 Jul, 2009 2 commits
    • Roger Dingledine's avatar
      Revise 0.2.1.17-rc changelog. · 4e8d2284
      Roger Dingledine authored and Nick Mathewson's avatar Nick Mathewson committed
      4e8d2284
    • Karsten Loesing's avatar
      Make an attempt to fix bug 1024. · 3e6bb050
      Karsten Loesing authored and Nick Mathewson's avatar Nick Mathewson committed
      The internal error "could not find intro key" occurs when we want to send
      an INTRODUCE1 cell over a recently finished introduction circuit and think
      we built the introduction circuit with a v2 hidden service descriptor, but
      cannot find the introduction key in our descriptor.
      
      My first guess how we can end up in this situation is that we are wrong in
      thinking that we built the introduction circuit based on a v2 hidden
      service descriptor. This patch checks if we have a v0 descriptor, too, and
      uses that instead.
      3e6bb050
  12. 30 Jun, 2009 1 commit
  13. 25 Jun, 2009 1 commit
  14. 24 Jun, 2009 1 commit
  15. 22 Jun, 2009 2 commits
  16. 20 Jun, 2009 1 commit
  17. 19 Jun, 2009 3 commits
  18. 18 Jun, 2009 1 commit
    • Nick Mathewson's avatar
      tor-resolve: Don't automatically refuse .onion addresses. · 298dc95d
      Nick Mathewson authored
      If the Tor is running with AutomapHostsOnResolve set, it _is_
      reasonable to do a DNS lookup on a .onion address.  So instead we make
      tor-resolve willing to try to resolve anything.  Only if Tor refuses
      to resolve it do we suggest to the user that resolving a .onion
      address may not work.
      
      Fix for bug 1005.
      298dc95d
  19. 16 Jun, 2009 1 commit
  20. 12 Jun, 2009 1 commit
  21. 08 Jun, 2009 1 commit
  22. 07 Jun, 2009 1 commit
  23. 05 Jun, 2009 1 commit
  24. 03 Jun, 2009 1 commit
    • Nick Mathewson's avatar
      Fix gprof bottlenecks on exit nodes found by Jacob. · b262e765
      Nick Mathewson authored
      Apparently all the stuff that does a linear scan over all the DNS
      cache entries can get really expensive when your DNS cache is very
      large.  It's hard to say how much this will help performance, since
      gprof doesn't count time spent in OpenSSL or zlib, but I'd guess 10%.
      
      Also, this patch removes calls to assert_connection_ok() from inside
      the read and write callbacks, which are similarly unneeded, and a
      little costlier than I'm happy with.
      
      This is probably worth backporting to 0.2.0.
      b262e765
  25. 31 May, 2009 1 commit
  26. 30 May, 2009 2 commits
    • Nick Mathewson's avatar
      Don't attempt to log messages to a controller from a worker thread. · fd992dee
      Nick Mathewson authored
      This patch adds a function to determine whether we're in the main
      thread, and changes control_event_logmsg() to return immediately if
      we're in a subthread.  This is necessary because otherwise we will
      call connection_write_to_buf, which modifies non-locked data
      structures.
      
      Bugfix on 0.2.0.x; fix for at least one of the things currently
      called "bug 977".
      fd992dee
    • Sebastian Hahn's avatar
      Consider *ListenAddress when warning about low ports and hibernation · e70fe116
      Sebastian Hahn authored
      Tas (thanks!) noticed that when *ListenAddress is set, Tor would
      still warn on startup when *Port is low and hibernation is active.
      The patch parses all the *ListenAddress lines, and checks the
      ports. Bugfix on 0.2.1.15-rc
      e70fe116