summaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | | | | config-path: Convert tests to use dd(TorConfig).Nick Mathewson2026-05-182-8/+6
| | | | | | | |
| * | | | | | | config: Convert some load.rs tests to use dd(TorConfig).Nick Mathewson2026-05-181-18/+11
| | | | | | | |
| * | | | | | | config: Use derive(TorConfig) for map builder tests.Nick Mathewson2026-05-181-14/+8
| | | | | | | |
| * | | | | | | config: Implement Default for ConfigurationTree.Nick Mathewson2026-05-181-1/+1
| | | | | | | |
| * | | | | | | tor-config: remove a needless clone.Nick Mathewson2026-05-181-1/+1
| | | | | | | |
| * | | | | | | arti::reload_cfg: Extract common part of select_biased! blockNick Mathewson2026-05-181-15/+3
| | | | | | | |
| * | | | | | | arti: Reformat reload_cfg.rs and cfg.rsNick Mathewson2026-05-182-66/+84
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is _just_ the results of a rustfmt invocation on this file. Due to #2532, these modules were getting overlooked by our regular rustfmt checks. I'm planning to circle back later on and fix #2532, but for now, reformatting these files will make future edits cleaner.
| * | | | | | | config: Add a merge_from method to ConfigurationTreeNick Mathewson2026-05-182-1/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We'll use this in RPC to implement configuration changing.
| * | | | | | | tor-config: Allow inspecting parts of a ConfigurationTree.Nick Mathewson2026-05-122-3/+65
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will be used by RPC. Probably. It might actually be a better to re-serialize the configuration after parsing it, so that our inspection functions can see default values.
* | | | | | | | tor-netdoc: Store ntor_onion_key as Curve25519PublicClara Engler2026-05-182-4/+4
| | | | | | | |
* | | | | | | | tor-netdoc: Use saturating SystemTime add/sub (fmt)Clara Engler2026-05-181-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | No functional change.
* | | | | | | | tor-netdoc: Use saturating SystemTime add/subClara Engler2026-05-181-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit deserves no explanation, it should be the default.
* | | | | | | | tor-netdoc: Store published in Iso8601TimeSpClara Engler2026-05-182-6/+8
| | | | | | | |
* | | | | | | | tor-netdoc: Add intro item to RouterDescClara Engler2026-05-182-28/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit introduces `RouterDesc::router` using `RouterDescIntroItem` by moving `nickname`, `orport`, `dirport`, and `ipv4addr` into it. A notable change is that ipv4addr is no longer stored in an `Option`. I have no idea why this was the case because it has always been mandatory and never None anyways, but I suspect it was to be able to treat it as an iterator, something we can also achieve using iter::once().
* | | | | | | | make fs-mistrust tests libc-genericAndrew Kloet2026-05-141-2/+2
| |_|_|/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The access_symlink() test fails when using musl libc, which for ELOOP uses the string: [1] > "Symbolic link loop" libc errors should be matched against the standardized error names rather than the libc error messages. This behaviour has been recognized by the maintiner of the Alpine Linux Arti port who had to delete this test to have it build against musl.[2] [1] https://git.musl-libc.org/cgit/musl/tree/src/errno/__strerror.h#n52 [2] https://gitlab.alpinelinux.org/alpine/aports/-/blob/3.23-stable/community/arti/disable-access_symlink-test.patch
* | | | | | | Merge branch 'arc_torclient' into 'main'Nick Mathewson2026-05-1319-302/+331
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make all TorClient constructors wrap the TorClient in an Arc. Closes #2469 See merge request tpo/core/arti!3990
| * | | | | | | Fix documentation that referred to clones of a TorClient.Nick Mathewson2026-05-131-18/+7
| | | | | | | |
| * | | | | | | client: Move the ClientInner code into one impl block.Nick Mathewson2026-05-131-171/+166
| | | | | | | |
| * | | | | | | client: Remove some inner Arcs from ClientInnerNick Mathewson2026-05-131-9/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These were only Arc<> so that TorClient could implement Clone.
| * | | | | | | client: revise StreamPrefs methodsNick Mathewson2026-05-132-14/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The `set_stream_prefs` method was the only one that took a TorClient as `&mut self`. But we only expose Arc<TorClient<R>>, that isn't a reasonable API. The `clone_with_prefs` method has been renamed, since it no longer "clones" anything meaningfully.
| * | | | | | | Make TorClient no longer implement Clone.Nick Mathewson2026-05-137-64/+100
| | | | | | | |
| * | | | | | | Make all TorClient constructors wrap the TorClient in an Arc.Nick Mathewson2026-05-1317-45/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is part of rationalizing the structure of TorClient so we can refactor startup logic, and so that RPC code can reason about object identity. See #2469.
* | | | | | | | Merge branch 'non-exhaust' into 'main'Clara Engler2026-05-134-2/+16
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | tor-netdoc: Constructor: insist on proper Constructor non-exhaustive pattern See merge request tpo/core/arti!3986
| * | | | | | | | tor-netdoc: Constructor: insist on proper Constructor non-exhaustive patternIan Jackson2026-05-131-1/+9
| | | | | | | | |
| * | | | | | | | tor-netdoc: SharedRandStatuses: Use proper Constructor non-exhaustive patternIan Jackson2026-05-133-1/+7
| | | | | | | | |
* | | | | | | | | Merge branch 'hashx-fuzz-rand-fix' into 'main'Ian Jackson2026-05-132-8/+11
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | hashx: Update rand version used in fuzz tests. See merge request tpo/core/arti!3987
| * | | | | | | | | hashx: Update rand version used in fuzz tests.Wesley Aptekar-Cassels2026-05-132-8/+11
| |/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is less important now that we've disabled these tests, but might as well make it easier if anyone picks these up in the future.
* | | | | | | | | Merge branch 'expectation' into 'main'opara2026-05-131-1/+1
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Turn an expectation into an allow See merge request tpo/core/arti!3983
| * | | | | | | | | Turn an expectation into an allowIan Jackson2026-05-131-1/+1
| | |/ / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | Fixes `cargo clippy --locked --all-features -p arti`
* | | | | | | | | Merge branch 'connect_error' into 'main'opara2026-05-134-32/+80
|\ \ \ \ \ \ \ \ \ | |_|/ / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | chanmgr: Do not turn connect errors into proxy errors. Closes #2459 See merge request tpo/core/arti!3932
| * | | | | | | | chanmgr: report target address, not proxy address, in errorNick Mathewson2026-05-074-6/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also, change the address type in the error to String for now. In reality we need a better representation of this error, but that shouldn't block this.
| * | | | | | | | chanmgr: refactor error typesNick Mathewson2026-05-074-21/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Proxy belonged as a subcase of ChannelBuild. And ChannelBuild was only about making an initial connection.
| * | | | | | | | chanmgr: Do not turn connect errors into proxy errors.Nick Mathewson2026-05-072-15/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes the problem where we'd report all connect failures as proxy failures. Closes #2459.
* | | | | | | | | Merge branch 'random-range' into 'main'Ian Jackson2026-05-131-0/+6
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | clippy: Work around bug where it claims method doesn't exist See merge request tpo/core/arti!3982
| * | | | | | | | | clippy: Work around bug where it claims method doesn't existIan Jackson2026-05-131-0/+6
| | |/ / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes warning: `rand::RngExt::random_range` does not refer to a reachable function --> /volatile/rustcargo/Rustup/Arti/arti/clippy.toml:7:5 | 7 | { path = "rand::RngExt::random_range", reason = "Prefer tor_basic_utils::RngExt::gen_range_checked to avoid uncontrolled panics, or gen_range_infallible if applicable" }, | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: add `allow-invalid = true` to the entry to suppress this warning
* | | | | | | | | tor-netdoc: SharedRandParticipate: Add TODO re "presence" typeIan Jackson2026-05-131-0/+2
| | | | | | | | |
* | | | | | | | | tor-netdoc: SharedRandCommitV1: Improve type of revealIan Jackson2026-05-131-1/+4
| | | | | | | | |
* | | | | | | | | tor-netdoc: SharedRandCommitV1: Improve type of commitIan Jackson2026-05-131-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use FixedB64 since it is in fact fixed length. While we're here, add the docs link I had to follow to figure this out.
* | | | | | | | | tor-netdoc: VoteAuthorityEntry: reorder fields to spec orderIan Jackson2026-05-131-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Only SharedRandStatuses was out of place.
* | | | | | | | | tor-netdoc: rustfmt (re-alphabetise and re-wrap imports)Ian Jackson2026-05-131-2/+1
| | | | | | | | |
* | | | | | | | | tor-netdoc: vote authority entry: declare it completeIan Jackson2026-05-131-3/+0
| | | | | | | | |
* | | | | | | | | tor-netdoc: vote authority entry: parse shared-rand-commitIan Jackson2026-05-131-2/+89
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is rather ugly, because the protocol is being ad-hoc again.
* | | | | | | | | tor-netdoc: vote authority entry: parse shared-rand-participateIan Jackson2026-05-131-1/+21
| | | | | | | | |
* | | | | | | | | tor-netdoc: vote authority entry: parse legacy-dir-keyIan Jackson2026-05-131-1/+6
| | | | | | | | |
* | | | | | | | | tor-netdoc: Soften a TODO.Ian Jackson2026-05-131-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Preamble now doesn't contain anything that's *wrong*. It is missing a couple of fields that will be wanted when we generate votes.
* | | | | | | | | tor-netdoc: Add a ticket reference for a TODOIan Jackson2026-05-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This isn't needed for the arti dirauth consensus method, but it will be needed for arti dirauth vote calculator.
* | | | | | | | | tor-netdoc: Add shared-rand-*-status to VoteAuthorityEntryIan Jackson2026-05-132-5/+4
| | | | | | | | |
* | | | | | | | | tor-netdoc: Break out SharedRandStatuses, and remove it from votesIan Jackson2026-05-136-14/+40
| | | | | | | | |
* | | | | | | | | tor-netdoc: impl Ord and PartialOrd for byte wrapper typesIan Jackson2026-05-132-2/+15
| | | | | | | | |
* | | | | | | | | tor-netdoc: derive Ord and PartialOrd for RSA fingerprint typesIan Jackson2026-05-132-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will let us use them in types in ordered lists in netdocs, without fuss.