Skip to content
Snippets Groups Projects
  1. Apr 06, 2022
  2. Apr 04, 2022
  3. Apr 02, 2022
  4. Apr 01, 2022
    • Nick Mathewson's avatar
      Bump all arti*, tor* crates to 0.2.0 · 5b2fc118
      Nick Mathewson authored
      Not all of these strictly need to be bumped to 0.2.0; many could go
      to 0.1.1 instead.  But since everything at the tor-rtcompat and
      higher layers has had breaking API changes, it seems not so useful
      to distinguish.  (It seems unlikely that anybody at this stage is
      depending on e.g. tor-protover but not arti-client.)
      5b2fc118
    • Nick Mathewson's avatar
      Bump caret, retry-error to 0.1.1 · aae242af
      Nick Mathewson authored
      Unlike the rest of the crates, these don't have a "tor-" or "arti-"
      prefix, and are potentially used by code outside arti.  With that in
      mind, it's probably for the best not to bump them to 0.2.0 along
      with the rest of our crates.
      
      They have had no changes since 0.1.0 other than refactoring and
      changing of clippy lints.  Therefore, I'm not bumping the
      dependencies from other crates onto these: it's fine whether our
      other crates use caret/retry-error 0.1.0 or 0.1.1.
      aae242af
    • Nick Mathewson's avatar
      Update Cargo.lock based on build. · a7cf65ca
      Nick Mathewson authored
      a7cf65ca
    • Nick Mathewson's avatar
      Final "cargo update" before 0.2.0 · 8393a341
      Nick Mathewson authored
      8393a341
  5. Mar 31, 2022
    • Nick Mathewson's avatar
      Directory filtering in arti-testing. · e98aa50e
      Nick Mathewson authored
      This feature allows us to detect different failing cases for
      #329 that would otherwise be hard to induce.  It works by
      filtering consensus directory objects and/or microdescriptor objects
      before introducing them to the directory manager.
      
      Closes #397.
      e98aa50e
    • Nick Mathewson's avatar
      tor-netdoc: Conditionally expose document fields. · b1b7ef00
      Nick Mathewson authored
      This commit uses the `visibility` and `visible` crates to
      conditionally make certain structs and their fields public
      (respectively).  This is incredibly dangerous to use for anything
      besides testing, and I've tried to write the documentation for the
      feature accordingly.
      b1b7ef00
  6. Mar 30, 2022
    • Nick Mathewson's avatar
      Use derive_more to derive AsRef. · df3c51c8
      Nick Mathewson authored
      df3c51c8
    • Nick Mathewson's avatar
      Turn FallbackList into a real type, and store one in GuardMgr. · 9da43189
      Nick Mathewson authored
      The guard manager is responsible for handing out the first hops of
      tor circuits, keeping track of their successes and failures, and
      remembering their states.  Given that, it makes sense to store this
      information here.  It is not yet used; I'll be fixing that in
      upcoming commits.
      
      Arguably, this information no longer belongs in the directory
      manager: I've added a todo about moving it.
      
      This commit will break compilation on its own in a couple of places;
      subsequent commits will fix it up.
      9da43189
    • Nick Mathewson's avatar
      Move fallback.rs into guardmgr. · 80b65c3a
      Nick Mathewson authored
      This is the logical place for it, I think: the GuardMgr's job is to
      pick the first hop for a circuit depending on remembered status for
      possible first hops.  Making this change will let us streamline the
      code that interacts with these objects.
      80b65c3a
    • eta's avatar
      Make daemon tasks self-contained; introduce NetDirProvider · ac64bdea
      eta authored
      The various background daemon tasks that `arti-client` used to spawn are
      now handled inside their respective crates instead, with functions
      provided to spawn them that return `TaskHandle`s.
      
      This required introducing a new trait, `NetDirProvider`, which steals
      some functionality from the `DirProvider` trait to enable `tor-circmgr`
      to depend on it (`tor-circmgr` is a dependency of `tor-dirmgr`, so it
      can't depend on `DirProvider` directly).
      
      While we're at it, we also make some of the tasks wait for events from
      the `NetDirProvider` instead of sleeping, slightly increasing
      efficiency.
      ac64bdea
  7. Mar 29, 2022
  8. Mar 21, 2022
  9. Mar 16, 2022
  10. Mar 14, 2022
  11. Mar 11, 2022
  12. Mar 07, 2022
  13. Mar 04, 2022
  14. Mar 03, 2022
    • Nick Mathewson's avatar
      arti-testing: Initial implementation · 9329c7b8
      Nick Mathewson authored
      This commit adds a new program to try to implement the ideas behind
      experimentation in arti#329.  In particular, it tries to implement
      basic client "can I bootstrap and connect" functionality testing,
      with a lot of instrumentation, and support for breaking things.
      
      So far, the instrumentation is limited to counting TCP bytes and
      connections, and counting events.  Still, this is enough to measure
      behavior on some of the incorrect-clock tests.
      
      NOTE:
      
      For now, you are _required_ to pass in an explicit configuration, in
      hopes that this will lead you to override your storage directories
      for doing specific experiments.
      9329c7b8
  15. Mar 02, 2022
Loading