Skip to content
Snippets Groups Projects
  1. Jun 27, 2018
  2. Jun 22, 2018
  3. Jun 21, 2018
  4. Jun 19, 2018
    • Nick Mathewson's avatar
      Use a rust build script to set linker options correctly for tests. · bd9ebb37
      Nick Mathewson authored
      We need this trick because some of our Rust tests depend on our C
      code, which in turn depend on other native libraries, which thereby
      pulls a whole mess of our build system into "cargo test".
      
      To solve this, we add a build script (build.rs) to set most of the
      options that we want based on the contents of config.rust.  Some
      options can't be set, and need to go to the linker directly: we use
      a linker replacement (link_rust.sh) for these.  Both config.rust and
      link_rust.sh are generated by autoconf for us.
      
      This patch on its own should enough to make the crypto test build,
      but not necessarily enough to make it pass.
      bd9ebb37
  5. Dec 13, 2017
  6. Nov 01, 2017
  7. Sep 19, 2017
  8. Sep 07, 2017
  9. May 19, 2017
    • Sebastian Hahn's avatar
      Allow Rust build using locally supplied crates or crates.io · 70c06710
      Sebastian Hahn authored and Nick Mathewson's avatar Nick Mathewson committed
      This adds a couple of configure commands to control whether we're
      requiring all dependencies to be available locally (default) or not
      (--enable-cargo-online-mode). When building from a tarball, we require
      the RUST_DEPENDENCIES variable to point to the local repository of
      crates. This also adds src/ext/rust as a git submodule that contains
      such a local repository for easy setup.
      70c06710
  10. Apr 25, 2017
    • David Goulet's avatar
      trace: Add a basic event-tracing infrastructure. · cb8ac1f3
      David Goulet authored and Nick Mathewson's avatar Nick Mathewson committed
      
      This commit adds the src/trace directory containing the basics for our tracing
      subsystem. It is not used in the code base. The "src/trace/debug.h" file
      contains an example on how we can map our tor trace events to log_debug().
      
      The tracing subsystem can only be enabled by tracing framework at compile
      time. This commit introduces the "--enable-tracing-debug" option that will
      make all "tor_trace()" function be maped to "log_debug()".
      
      Closes #13802
      
      Signed-off-by: David Goulet's avatarDavid Goulet <dgoulet@torproject.org>
      cb8ac1f3
  11. Apr 13, 2017
  12. Mar 26, 2017
  13. Jan 30, 2017
  14. Dec 23, 2016
    • cypherpunks's avatar
      Remove dead code related to the old tor-fw-helper · d3c0b137
      cypherpunks authored and Nick Mathewson's avatar Nick Mathewson committed
      This commit removes more code related to the old tor-fw-helper which was
      removed in ticket 13338.
      
      Closes ticket 21024.
      d3c0b137
    • cypherpunks's avatar
      Use AM_PROG_AR to improve portability · a1c0ebc3
      cypherpunks authored and Nick Mathewson's avatar Nick Mathewson committed
      Turning on warnings in Automake makes it complain about not using the
      AM_PROG_AR macro. The AM_PROG_AR macro is required when LIBRARIES or
      LTLIBRARIES is used.
      
      The macro looks for an archiver and wraps it in the ar-lib script which
      is automatically generated so Git should ignore it.
      
      It makes the custom check for 'ar' obsolete so it is removed.
      
      The AM_PROG_AR macro was added in Automake 1.11.2 thus the minimum
      Automake version is increased.
      a1c0ebc3
  15. Oct 03, 2016
  16. May 23, 2016
  17. May 12, 2016
    • Nick Mathewson's avatar
      Add -ftrapv to gcc-hardening ... mostly! · ce854a8d
      Nick Mathewson authored
      We know there are overflows in curve25519-donna-c32, so we'll have
      to have that one be fwrapv.
      
      Only apply the asan, ubsan, and trapv options to the code that does
      not need to run in constant time.  Those options introduce branches
      to the code they instrument.
      
      (These introduced branches should never actually be taken, so it
      might _still_ be constant time after all, but branch predictors are
      complicated enough that I'm not really confident here. Let's aim for
      safety.)
      
      Closes 17983.
      ce854a8d
  18. May 09, 2016
  19. Dec 20, 2015
  20. Dec 15, 2015
    • teor's avatar
      Add Fallback Directory Candidate Selection Script · 4c1c2a31
      teor authored
      "Tor has included a feature to fetch the initial consensus from nodes
       other than the authorities for a while now. We just haven't shipped a
       list of alternate locations for clients to go to yet.
      
       Reasons why we might want to ship tor with a list of additional places
       where clients can find the consensus is that it makes authority
       reachability and BW less important.
      
       We want them to have been around and using their current key, address,
       and port for a while now (120 days), and have been running, a guard,
       and a v2 directory mirror for most of that time."
      
      Features:
      * whitelist and blacklist for an opt-in/opt-out trial.
      * excludes BadExits, tor versions that aren't recommended, and low
        consensus weight directory mirrors.
      * reduces the weighting of Exits to avoid overloading them.
      * places limits on the weight of any one fallback.
      * includes an IPv6 address and orport for each FallbackDir, as
        implemented in #17327. (Tor won't bootstrap using IPv6 fallbacks
        until #17840 is merged.)
      * generated output includes timestamps & Onionoo URL for traceability.
      * unit test ensures that we successfully load all included default
        fallback directories.
      
      Closes ticket #15775. Patch by "teor".
      OnionOO script by "weasel", "teor", "gsathya", and "karsten".
      4c1c2a31
    • Nick Mathewson's avatar
  21. Oct 02, 2015
  22. Aug 06, 2015
  23. Jul 06, 2015
    • Yawning Angel's avatar
      Integrate ed25519-donna (Not yet used). · 0f3eeca9
      Yawning Angel authored
      Integrate ed25519-donna into the build process, and provide an
      interface that matches the `ref10` code.  Apart from the blinding and
      Curve25519 key conversion, this functions as a drop-in replacement for
      ref10 (verified by modifying crypto_ed25519.c).
      
      Tests pass, and the benchmarks claim it is quite a bit faster, however
      actually using the code requires additional integration work.
      0f3eeca9
Loading