Commit Graph

1254 Commits

Author SHA1 Message Date
Nick Mathewson b6926d7f55 Merge branch 'path-refactor-squashed' 2021-05-20 14:10:19 -04:00
Alexander Færøy 00222dbe07 Refactor TorPath code to have explicit constructors.
This patch refactors the internal representation of the TorPath type to
use an enum for representing its state. We add explicit constructor
methods to create the different types of path's, such that client users
can write code that uses different paths based on their need.

This work was done together with Nick as part of the Arti hackathon.
2021-05-20 14:10:11 -04:00
Nick Mathewson 7c28b693f2 Remove a redundant feature in tokio 2021-05-20 14:02:17 -04:00
Nick Mathewson 6313ee0456 Implement Runtime for a thin wrapper around tokio runtime handles
Having this enables us to use Arti with an externally constructed
tokio runtime.
2021-05-20 13:54:36 -04:00
Alexander Færøy 9ee679dd8d Make netdir's Relay type derive "Clone". 2021-05-20 16:25:14 +00:00
Nick Mathewson ce6702a147 Give every Cargo.toml a repository field 2021-05-19 14:56:09 -04:00
Nick Mathewson 712e6ec23c Fill in "package.categories" on all Cargo.toml 2021-05-19 14:50:39 -04:00
Nick Mathewson 26689412c0 fix a clippy warning about pick_weighted. 2021-05-19 14:42:44 -04:00
Nick Mathewson bd31d21c42 Try to avoid a tor-rtcompat publicness warning 2021-05-18 14:36:13 -04:00
Nick Mathewson 411e1b35e0 Add the "unreachable_pub" lint.
This is a somewhat obnoxious change in its scope and requirements,
but it makes it easier to understand what the real public and
private parts of our APIs are.
2021-05-18 13:45:39 -04:00
Nick Mathewson 80535dda01 Check "connection" usage for when stream or channel would be better. 2021-05-18 11:17:28 -04:00
Nick Mathewson 6d6290bcd5 Always capitalize as RouterDesc, Microdesc. 2021-05-18 11:06:59 -04:00
Nick Mathewson 9e7de1a692 Prefer "relay" over "node" in most circumstances. 2021-05-18 11:04:44 -04:00
Nick Mathewson e2139e8afc Prefer "relay" over "router" in docs and APIs. 2021-05-18 10:58:12 -04:00
Nick Mathewson 90e96b32c8 Prefer "relay" to "server" when appropriate. 2021-05-18 10:34:15 -04:00
Nick Mathewson 6bf7cbb3f4 Remove tor-proto exposure in tor-client API. 2021-05-18 10:08:29 -04:00
Nick Mathewson 4507f44b54 Add the little script I use to add warnings to crates. 2021-05-18 09:31:49 -04:00
Nick Mathewson 769b321312 Improved tests for sqlite storage. 2021-05-14 12:19:18 -04:00
Nick Mathewson ade0fd4c33 Consistency, renaming, and testing for dirmgrconfig 2021-05-14 11:23:56 -04:00
Nick Mathewson c2290c65a6 Move override_net_params into DirMgrConfig. 2021-05-14 10:43:03 -04:00
Nick Mathewson f69a68df66 Rename NetDirConfig to DirMgrConfig. 2021-05-14 10:27:01 -04:00
Nick Mathewson 948ec0d602 Add builders for remaining config types in tor-dirmgr. 2021-05-14 10:23:10 -04:00
Nick Mathewson 2129e55dfc WIP: more builders. 2021-05-13 08:34:51 -04:00
Nick Mathewson c10de0c3be Add builders for authority and fallback objects. 2021-05-10 15:40:52 -04:00
Nick Mathewson c72193bda4 Fix a comment typo and needless mut 2021-05-10 15:00:59 -04:00
Nick Mathewson 75eee72ebc Remove more pieces of unused legacy storage code. 2021-05-10 14:51:58 -04:00
Nick Mathewson fa4c8ac4c3 Remove untested legacy.rs code. Add a comment about where to find it. 2021-05-10 10:09:26 -04:00
Nick Mathewson 28b1c1b9ce tor_netdir: tests on relay picking and more 2021-05-10 09:51:05 -04:00
Nick Mathewson 2a3fc3f5e6 netdir: Add real tests for frac_for_role().
Also fix a bug in calculating have_enough_paths(): we were assuming
the wrong behavior for weight_for_role().
2021-05-10 08:45:18 -04:00
Nick Mathewson 609d02a96c netdir: remove unused From implementation. 2021-05-10 07:23:52 -04:00
Nick Mathewson a5c0631728 Fix some warnings from nightly clippy 2021-05-07 16:32:41 -04:00
Nick Mathewson e01f227191 Resolve clippy warnings from Rust 1.52.
Rust 1.52 just came out, and there are new clippy lints to deal
with:

   * It spots more cases when we could use Option::map
   * It spots more cases when we could use Iterator::flatten
   * When we build a struct instance, it wants us to list the fields
     in the same order that the struct declares them.
2021-05-07 15:53:17 -04:00
Nick Mathewson d223c232d0 Use s.parse(), not u16::from_str_radix(s,10)
Clippy started warning on this with Rust 1.52.  I'm fairly sure that
when I wrote this code I was worried that <u16 as FromStr>::parse()
might allow hex or something.  But fortunately, it doesn't work that
way, so I don't need to be paranoid here.
2021-05-07 15:51:13 -04:00
Nick Mathewson c1f7d49ded tor-rtcompat: Add missing documentation for async_std.rs 2021-05-07 15:50:42 -04:00
Nick Mathewson fa038e5e21 Add some tests to tor-netdir. 2021-05-07 15:13:32 -04:00
Nick Mathewson 55fa952e37 More tests for tor-netdir::weight 2021-05-07 08:44:13 -04:00
Nick Mathewson 7c7be3a3f1 Upgrade to latest RustCrypto crates. 2021-05-06 07:57:31 -04:00
Nick Mathewson 760aab7a0a Fix documentation warnings. 2021-05-05 17:34:49 -04:00
Nick Mathewson 29b921b0e5 Add a consensus builder, for testing. 2021-05-05 17:25:52 -04:00
Nick Mathewson b47b9a6f54 Add an authcert builder, for testing. 2021-05-05 11:34:44 -04:00
Nick Mathewson 88b3fefa4e Add a microdesc builder, for testing. 2021-05-05 10:33:10 -04:00
Nick Mathewson 6937d6690d Switch to v2 feature resolver. 2021-05-05 09:19:25 -04:00
Nick Mathewson 53d5174eda A few easy tests in tor-dirmgr. 2021-05-04 10:51:53 -04:00
Nick Mathewson 6484bc95bb Repair multiprocess collaborative directory download. 2021-05-03 17:43:25 -04:00
Nick Mathewson 06a9d2c688 dirmgr: a couple of tiny tests 2021-05-03 17:07:33 -04:00
Nick Mathewson 8eb36cbfff Add trait_duplication_in_bounds warning. 2021-05-03 16:30:27 -04:00
Nick Mathewson d516298b47 Add unseparated_literal_suffix lint, and fix it. 2021-05-03 16:19:01 -04:00
Nick Mathewson 9737580402 Add a few more clippy warnings 2021-05-03 16:10:39 -04:00
Nick Mathewson b81db158bb tweak semantics of routerdesc docid 2021-05-03 15:54:33 -04:00
Nick Mathewson 629ec11f88 Add missing documention in tor-rtmock 2021-05-03 11:37:35 -04:00