1. 14 Feb, 2020 1 commit
  2. 12 Feb, 2020 1 commit
  3. 05 Sep, 2019 1 commit
  4. 15 Mar, 2019 1 commit
  5. 16 Jan, 2019 2 commits
  6. 05 Jul, 2018 2 commits
    • Nick Mathewson's avatar
      Fix every include path changed in the previous commit (automated) · ef486e3c
      Nick Mathewson authored
      I am very glad to have written this script.
      ef486e3c
    • Nick Mathewson's avatar
      Move literally everything out of src/or · 63b4ea22
      Nick Mathewson authored
      This commit won't build yet -- it just puts everything in a slightly
      more logical place.
      
      The reasoning here is that "src/core" will hold the stuff that every (or
      nearly every) tor instance will need in order to do onion routing.
      Other features (including some necessary ones) will live in
      "src/feature".  The "src/app" directory will hold the stuff needed
      to have Tor be an application you can actually run.
      
      This commit DOES NOT refactor the former contents of src/or into a
      logical set of acyclic libraries, or change any code at all.  That
      will have to come in the future.
      
      We will continue to move things around and split them in the future,
      but I hope this lays a reasonable groundwork for doing so.
      63b4ea22
  7. 03 Jul, 2018 1 commit
  8. 20 Jun, 2018 2 commits
  9. 15 Jun, 2018 2 commits
  10. 15 Feb, 2018 3 commits
    • David Goulet's avatar
      cmux: Always use the cmux policy · e19cd38f
      David Goulet authored
      
      
      Remove the checks on cmux->policy since it should always be set.
      Signed-off-by: David Goulet's avatarDavid Goulet <dgoulet@torproject.org>
      e19cd38f
    • David Goulet's avatar
      cmux: Remove round-robin circuit policy · c235c32b
      David Goulet authored
      
      
      Since 0.2.4, tor uses EWMA circuit policy to prioritize. The previous
      algorithm, round-robin, hasn't been used since then but was still used as a
      fallback.
      
      Now that EWMA is mandatory, remove that code entirely and enforce a cmux
      policy to be set.
      
      This is part of a circuitmux cleanup to improve performance and reduce
      complexity in the code. We'll be able to address future optimization with this
      work.
      
      Closes #25268
      Signed-off-by: David Goulet's avatarDavid Goulet <dgoulet@torproject.org>
      c235c32b
    • David Goulet's avatar
      cmux: Remove PARANOIA assert functions · 9d68647b
      David Goulet authored
      
      
      The reason to do so is because these functions haven't been used in years so
      since 0.2.4, every callsite is NOP.
      
      In future commits, we'll remove the round robin circuit policy which is mostly
      validated within those function.
      
      This simplifies the code greatly and remove dead code for which we never had a
      configure option in the first place nor an easy way to use them in production.
      
      Part of #25268
      Signed-off-by: David Goulet's avatarDavid Goulet <dgoulet@torproject.org>
      9d68647b
  11. 21 Dec, 2017 1 commit
    • Nick Mathewson's avatar
      Move destroy cells into a separate queue type of their own, to save RAM · 520cf217
      Nick Mathewson authored
      We've been seeing problems with destroy cells queues taking up a
      huge amount of RAM.  We can mitigate this, since while a full packed
      destroy cell takes 514 bytes, we only need 5 bytes to remember a
      circuit ID and a reason.
      
      Fixes bug 24666. Bugfix on 0.2.5.1-alpha, when destroy cell queues
      were introduced.
      520cf217
  12. 08 Dec, 2017 1 commit
  13. 15 Sep, 2017 1 commit
  14. 13 Sep, 2017 1 commit
  15. 15 Mar, 2017 1 commit
  16. 18 Oct, 2016 1 commit
  17. 11 Jun, 2016 1 commit
  18. 27 Feb, 2016 1 commit
  19. 15 Dec, 2015 1 commit
  20. 02 Jan, 2015 1 commit
  21. 28 Oct, 2014 1 commit
  22. 01 Oct, 2014 3 commits
  23. 02 Sep, 2014 2 commits
    • Nick Mathewson's avatar
      Another clang analyzer complaint wrt HT_GENERATE · 00ffccd9
      Nick Mathewson authored
      We're calling mallocfn() and reallocfn() in the HT_GENERATE macro
      with the result of a product.  But that makes any sane analyzer
      worry about overflow.
      
      This patch keeps HT_GENERATE having its old semantics, since we
      aren't the only project using ht.h.  Instead, define a HT_GENERATE2
      that takes a reallocarrayfn.
      00ffccd9
    • Nick Mathewson's avatar
      Fix a number of clang analyzer false-positives · efcab439
      Nick Mathewson authored
      Most of these are in somewhat non-obvious code where it is probably
      a good idea to initialize variables and add extra assertions anyway.
      
      Closes 13036.  Patches from "teor".
      efcab439
  24. 16 Jun, 2014 1 commit
  25. 14 Jun, 2014 1 commit
    • Nick Mathewson's avatar
      Try to diagnose bug 12184 · 8f3e3279
      Nick Mathewson authored
      Check for consistency between the queued destroy cells and the marked
      circuit IDs.  Check for consistency in the count of queued destroy
      cells in several ways.  Check to see whether any of the marked circuit
      IDs have somehow been marked longer than the channel has existed.
      8f3e3279
  26. 19 Apr, 2014 1 commit
    • Nick Mathewson's avatar
      scan-build: Be consistent with a needless check in circuitmux.c · 71064925
      Nick Mathewson authored
      In circuitmux_detach_all_circuits, we check whether an HT iterator
      gives us NULL.  That should be impossible for an HT iterator.  But
      our checking it has confused scan-build (justly) into thinking that
      our later use of HT_NEXT_RMV might not be kosher.  I'm taking the
      coward's route here and strengthening the check.  Bugfix on
      fd31dd44. (Not a real bug though)
      71064925
  27. 14 Mar, 2014 1 commit
  28. 19 Jul, 2013 1 commit
    • Nick Mathewson's avatar
      Initialize destroy_cell_queue. · 18845c55
      Nick Mathewson authored
      Likely fix for the crash bug of #9296, which was introduced through a
      combination of #7912 and #8586.  Bugfix not in any released Tor.
      18845c55
  29. 18 Jul, 2013 1 commit
  30. 10 Jul, 2013 1 commit
  31. 17 Jun, 2013 1 commit