Skip to content
Snippets Groups Projects
  1. Dec 06, 2021
    • Nick Mathewson's avatar
      Limit the number of elements in a consdiff hash line. · 86819229
      Nick Mathewson authored
      This avoids performing and then freeing a lot of small mallocs() if
      the hash line has too many elements.
      
      Fixes one case of bug 40472; resolves OSS-Fuzz 38363.  Bugfix on
      0.3.1.1-alpha when the consdiff parsing code was introduced.
      86819229
  2. Nov 06, 2021
  3. Nov 05, 2021
  4. Oct 29, 2021
  5. Oct 21, 2021
  6. Oct 20, 2021
  7. Oct 19, 2021
  8. Aug 12, 2021
  9. Aug 11, 2021
  10. Jun 10, 2021
  11. May 25, 2021
  12. May 18, 2021
  13. May 07, 2021
  14. Apr 16, 2021
    • Nick Mathewson's avatar
      Stop calling evdns_set_random_bytes_fn() · f20f5a4e
      Nick Mathewson authored
      This function has been a no-op since Libevent 2.0.4-alpha, when
      libevent got an arc4random() implementation.  Libevent has finally
      removed it, which will break our compilation unless we stop calling
      it.  (This is currently breaking compilation in OSS-fuzz.)
      
      Closes #40371.
      f20f5a4e
  15. Apr 13, 2021
  16. Mar 15, 2021
  17. Mar 12, 2021
  18. Feb 23, 2021
  19. Feb 19, 2021
    • Nick Mathewson's avatar
      Disable the dump_desc() function. · ede88c37
      Nick Mathewson authored
      It can be called with strings that should have been
      length-delimited, but which in fact are not.  This can cause a
      CPU-DoS bug or, in a worse case, a crash.
      
      Since this function isn't essential, the best solution for older
      Tors is to just turn it off.
      
      Fixes bug 40286; bugfix on 0.2.2.1-alpha when dump_desc() was
      introduced.
      ede88c37
  20. Jan 29, 2021
  21. Jan 21, 2021
  22. Jan 13, 2021
    • Nick Mathewson's avatar
      Better fix for #40241 (--enable-all-bugs-are-fatal and fallthrough) · fa8ecf88
      Nick Mathewson authored
      This one should work on GCC _and_ on Clang.  The previous version
      made Clang happier by not having unreachable "fallthrough"
      statements, but made GCC sad because GCC didn't think that the
      unconditional failures were really unconditional, and therefore
      _wanted_ a FALLTHROUGH.
      
      This patch adds a FALLTHROUGH_UNLESS_ALL_BUGS_ARE_FATAL macro that
      seems to please both GCC and Clang in this case: ordinarily it is a
      FALLTHROUGH, but when ALL_BUGS_ARE_FATAL is defined, it's an
      abort().
      
      Fixes bug 40241 again.  Bugfix on earlier fix for 40241, which was
      merged into maint-0.3.5 and forward, and released in 0.4.5.3-rc.
      fa8ecf88
  23. Jan 12, 2021
    • David Goulet's avatar
      hs-v3: Require reasonably live consensus · 04b02639
      David Goulet authored
      
      Some days before this commit, the network experienced a DDoS on the directory
      authorities that prevented them to generate a consensus for more than 5 hours
      straight.
      
      That in turn entirely disabled onion service v3, client and service side, due
      to the subsystem requiring a live consensus to function properly.
      
      We know require a reasonably live consensus which means that the HSv3
      subsystem will to its job for using the best consensus tor can find. If the
      entire network is using an old consensus, than this should be alright.
      
      If the service happens to use a live consensus while a client is not, it
      should still work because the client will use the current SRV it sees which
      might be the previous SRV for the service for which it still publish
      descriptors for.
      
      If the service is using an old one and somehow can't get a new one while
      clients are on a new one, then reachability issues might arise. However, this
      is a situation we already have at the moment since the service will simply not
      work if it doesn't have a live consensus while a client has one.
      
      Fixes #40237
      
      Signed-off-by: David Goulet's avatarDavid Goulet <dgoulet@torproject.org>
      04b02639
  24. Jan 11, 2021
  25. Dec 17, 2020
  26. Dec 14, 2020
    • Nick Mathewson's avatar
      Socks5: handle truncated client requests correctly · c4fe66e3
      Nick Mathewson authored
      Previously, our code would send back an error if the socks5 request
      parser said anything but DONE.  But there are other non-error cases,
      like TRUNCATED: we shouldn't send back errors for them.
      
      This patch lowers the responsibility for setting the error message
      into the parsing code, since the actual type of the error message
      will depend on what problem was encountered.
      
      Fixes bug 40190; bugfix on 0.3.5.1-alpha.
      c4fe66e3
  27. Nov 05, 2020
  28. Oct 28, 2020
  29. Oct 14, 2020
    • Nick Mathewson's avatar
      Implement proposal 318: Limit protovers to 0..63 · dd63b972
      Nick Mathewson authored
      In brief: we go through a lot of gymnastics to handle huge protover
      numbers, but after years of development we're not even close to 10
      for any of our current versions.  We also have a convenient
      workaround available in case we ever run out of protocols: if (for
      example) we someday need Link=64, we can just add Link2=0 or
      something.
      
      This patch is a minimal patch to change tor's behavior; it doesn't
      take advantage of the new restrictions.
      
      Implements #40133 and proposal 318.
      dd63b972
Loading