aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | | | | 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.
* | | | | | | | Merge branch 'rd-type-changes' into 'main'Clara Engler2026-05-182-38/+42
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Uncontroversial RouterDesc type changes See merge request tpo/core/arti!3976
| * | | | | | | | 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().
* | | | | | | | Merge branch 'fs-mistrust-generic-libc-fix' into 'main'opara2026-05-141-2/+2
|\ \ \ \ \ \ \ \ | |_|_|_|/ / / / |/| | | | | | | | | | | | | | | | | | | | | | | make fs-mistrust tests libc-generic See merge request tpo/core/arti!3996
| * | | | | | | 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 'metrics-yanked' into 'main'Nick Mathewson2026-05-131-2/+2
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update to metrics 0.24.6 See merge request tpo/core/arti!3992
| * | | | | | | Update to metrics 0.24.6Nick Mathewson2026-05-131-2/+2
|/ / / / / / / | | | | | | | | | | | | | | | | | | | | | The previous version (0.24.5) has been yanked.
* | | | | | | Merge branch 'arc_torclient' into 'main'Nick Mathewson2026-05-1320-306/+335
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-1318-49/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 'no-fuzz' into 'main'wesleyac2026-05-131-0/+3
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | CI: Disable cargo-fuzz test for now See merge request tpo/core/arti!3984
| * | | | | | | | | CI: Disable cargo-fuzz test for nowIan Jackson2026-05-131-0/+3
| | |/ / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This test is known to fail, and we have had a ticket for it for a week now. It should be re-enabled if and when it works again.
* | | | | | | | | 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-132-1/+14
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | clippy: Work around bug where it claims method doesn't exist See merge request tpo/core/arti!3982
| * | | | | | | | | clippy: Add an xref re random_range to the commentIan Jackson2026-05-131-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3982#note_3410614
| * | | | | | | | | clippy: disallow random_range standalone method tooIan Jackson2026-05-131-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Upstream rand have provided a convenient alias for causing your program to panic. How helpful.
| * | | | | | | | | clippy: Work around bug where it claims method doesn't existIan Jackson2026-05-132-1/+12
| | |/ / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | | | | | | Merge branch 'vae-and-preamble' into 'main'Ian Jackson2026-05-139-36/+202
|\ \ \ \ \ \ \ \ \ | |/ / / / / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | Complete vote preamble and authority section enough for consensus calculations See merge request tpo/core/arti!3948
| * | | | | | | | 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
| | | | | | | | |