summaryrefslogtreecommitdiff
path: root/crates/arti
Commit message (Collapse)AuthorAgeFilesLines
* cargo: Bump futures-copyClara Engler2026-01-131-1/+1
| | | | | The dependencies of futures-copy got bumped in arti!3570, leading to a change in futures-copy, hence why we bump the patch version.
* Merge branch 'version-bump' into 'main'Clara Engler2026-01-131-26/+26
|\ | | | | | | | | Bump dependencies for 1.9.0 See merge request tpo/core/arti!3570
| * cargo: Bump `arti` to `1.9.0`Clara Engler2026-01-121-1/+1
| |
| * cargo: Update `arti-*` and `tor-*` to `0.38.0`Clara Engler2026-01-121-25/+25
| | | | | | | | | | | | | | | | | | Done using the following: ```bash for crate in $(./maint/list_crates | rg '^(tor|arti-)'); do cargo set-version -p $crate 0.38.0 done ```
* | arti: fix path comment in example configSteven Engler2026-01-121-1/+1
| |
* | Make sure that rpc_state_sender lives as long as the proxies.Nick Mathewson2026-01-121-2/+8
| | | | | | | | | | | | Fixes bug introduced in 0cc367b9fef37c0f7d7f04d54c4687b27ef251d0. Without this fix, RPC's get_proxy_info command wouldn't work.
* | cargo: Run fixup-features for releaseClara Engler2026-01-121-0/+1
|/ | | | | | | Executed command: ``` cargo run -p fixup-features -- --exclude examples/ --exclude maint/ Cargo.toml ```
* keymgr: Make CTorPath more like the client/service specifiersGabriela Moldovan2026-01-061-3/+3
| | | | | | | | | | | | | This will make it easier to see the correspondence between CTorPaths and the HS client/service key specifiers. Initially, I was hoping this would make it easier to write a d-d macro that automatically derives a `CTorPath` variant (e.g. `HsClientDescEncKeypair`) from the KeySpecifier type name (`HsClientDescEncKeypairSpecifier`), but alas, I don't think d-d can "chop off" name suffixes ("Specifier", in this case). `from_ctor_path()`/`ctor_path()` implementations for converting `CTorPath`s to and from key specifiers.
* keymgr: Move Unrecognized errors out of KeyPathErrorGabriela Moldovan2026-01-062-3/+2
| | | | | | | | | | | | | | | | | | | | | Out of all the variants in `KeyPathError`, `Unrecognized` is the odd one out, because unlike the others, which are mainly just lower level parsing errors, `Unrecognized` is a higher level error constructed in `KeyMgr::describe()`. `KeyMgr::describe()` now returns an `Option`, because * the failure to describe a user provided `KeyPath` may or may not be an error * previously, `describe()` would only ever return `Ok` or `Err(KeyPathError::Unrecognized)`, which essentially a binary result. Also, `describe()` would never return any of the other `KeyPathError` kinds, which further suggests `Unrecognized` doesn't belong there The `Unrecognized` variant still exists, but is now part of `KeystoreCorruptionError`, (returned from `KeyMgr::validate_entry_integrity()`).
* keymgr: Update expected output in integration testsGabriela Moldovan2026-01-061-6/+6
| | | | | C Tor keystore entries now use the same output format as the non-C Tor entries.
* arti: Remove no-longer needed helper functionGabriela Moldovan2026-01-061-23/+18
| | | | This folds `display_arti_entry()` into `display_entry()`.
* arti: Remove special handling for C Tor keys (fmt)Gabriela Moldovan2026-01-061-4/+1
|
* arti: Remove special handling for C Tor keysGabriela Moldovan2026-01-061-40/+2
| | | | | | | | | | This is no longer needed now that `KeyMgr::describe()` works on `CTorPath`s. Removing this special handling has the added bonus that the keymgr CLI output is now uniform for all keystores (before this change, `keys list` used a slightly different output format for displaying C Tor entries). The corresponding tests will be updated in a future commit.
* Improve socks_listen/dns_listen documentation.Nick Mathewson2025-12-161-3/+8
|
* arti: Move "port_info_file" configuration into "storage"Nick Mathewson2025-12-163-12/+34
| | | | | | This was a little funny, since the other storage elements are declared in tor-client. Fortunately, our stacked configuration logic handles this fine.
* arti: tweak port_info documentation.Nick Mathewson2025-12-161-0/+3
|
* arti: Export the chosen ports in a ports_info.json file.Nick Mathewson2025-12-168-24/+267
| | | | | This allows applications to find out where arti is listening when arti has been configured to listen with the port "auto".
* arti: Change how proxy futures are returned.Nick Mathewson2025-12-163-26/+45
| | | | | | | | | | | | | | Previously, the proxy and dns modules only had "be a proxy" functions that ran forever. Now they have functions that bind to listeners and return a separate "be a proxy" future that runs forever. This lets us simplify some kludges in subcommands::proxy. More importantly, it will let us return the bound-to ports so that subcommands::proxy can write them to disk. This is a break in experimental-apis, which does not require a semver change.
* arti: tweak docs, add TODOs with respect to Listener.Nick Mathewson2025-12-163-1/+6
|
* arti: Log the actual addresses we are listening on.Nick Mathewson2025-12-162-4/+10
|
* arti: remove 'rustls/tls12' featureSteven Engler2025-12-091-1/+0
| | | | | | | We don't rely on this within the arti crate, and tor-rtcompat already sets this. It's confusing to have it here as well. If the arti ecosystem requires this, it should be enabled on the lower level crates (like it already is in tor-rtcompat) so that arti-client users get it too.
* Remove unnecessary `doc(cfg(...))` attributesNeel Chauhan2025-12-041-1/+0
| | | | | | | | | Fixes part of #2193. (Edits from nickm: I selected the cases here that I could verify were correct from immediate context.) Edited-by: Nick Mathewson <[email protected]>
* Merge branch 'deftly-1.6.0' into 'main'Ian Jackson2025-12-041-1/+1
|\ | | | | | | | | Update to derive-deftly 1.6.0 See merge request tpo/core/arti!3525
| * Update to derive-deftly 1.6.0Ian Jackson2025-12-031-1/+1
| | | | | | | | | | | | | | | | | | This has: * Fixes to hygiene spans from the new modules feature, needed for my WIP netdoc encoder derive. * A substantially richer `${error }` construct.
* | Merge branch 'torclient-keymgr-accessor' into 'main'wesleyac2025-12-031-12/+10
|\ \ | |/ |/| | | | | Add `KeyMgr` accessor to `TorClient` See merge request tpo/core/arti!3442
| * arti: keys: use `TorClient::keymgr` instead of `InertTorClient::keymgr` in ↵hjrgrn2025-11-051-12/+10
| | | | | | | | | | | | `run_check_integrity` This change simplifies the signature of `run_check_integrity`.
* | Merge branch 'cargo-updates' into 'main'Alexander Hansen Færøy2025-12-021-1/+1
|\ \ | | | | | | | | | | | | release: Bump metrics-exporter-prometheus See merge request tpo/core/arti!3521
| * | release: Bump metrics-exporter-prometheus to 0.18.0Gabriela Moldovan2025-12-021-1/+1
| | | | | | | | | | | | Part of #2278
* | | Merge branch 'listen' into 'main'opara2025-12-022-2/+2
|\ \ \ | |/ / |/| | | | | | | | tor-config: Refactor `Listen` to make usable for arti-relay See merge request tpo/core/arti!3469
| * | tor-config: rename `Listen::is_localhost_only` to `is_loopback_only`Steven Engler2025-12-022-2/+2
| | | | | | | | | | | | Assumes that 0.37.0 will be the next version number.
* | | Bump arti crate to 1.8.0Gabriela Moldovan2025-12-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Done using: ``` cargo set-version --bump minor -p arti ```
* | | Bump all the unstable tor- and arti- crates to 0.37.0.Gabriela Moldovan2025-12-021-24/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | Done using: ``` for crate in $(./maint/list_crates | rg '^(tor|arti-)'); do cargo set-version -p $crate 0.37.0 done
* | | Bump the versions of the non-{arti-,tor-} cratesGabriela Moldovan2025-12-021-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The non-{arti-,tor-} crates are: ``` ./maint/list_crates | rg -v '^(tor|arti)' oneshot-fused-workaround slotmap-careful test-temp-dir fslock-guard hashx equix caret fs-mistrust safelog retry-error futures-copy ``` We split them in the following categories: * crates with no changes (no version bumps): None ``` maint/changed_crates -v "arti-v$LAST_VERSION" 2>&1 >/dev/null | grep -i "no change" | grep -v '\(tor\|arti\)-' ``` * crates that only have non-functional changes (bump the patch version, but not the dependend-on version): - oneshot-fused-workaround - slotmap-careful - test-temp-dir - fslock-guard - equix - caret - safelog - retry-error * crates where functional changes were made, but no APIs were added or broken: - hashx - fs-mistrust - futures-copy * crates where APIs were broken (bump minor): None The bumps from this commit were created using this script: ``` PATCH_NF=( oneshot-fused-workaround slotmap-careful test-temp-dir fslock-guard equix caret safelog retry-error ) PATCH=" hashx fs-mistrust futures-copy " ./maint/bump_nodep "${PATCH_NF[@]}" for crate in $PATCH; do cargo set-version --bump patch -p $crate; done ```
* | | Merge branch 'fixup-feats' into 'main'Alexander Hansen Færøy2025-12-011-18/+44
|\ \ \ | | | | | | | | | | | | | | | | Run fixup-features in preparation for release See merge request tpo/core/arti!3510
| * | | arti: Run cargo-sort in preparation for releaseGabriela Moldovan2025-12-011-18/+40
| | | |
| * | | Run fixup-features in preparation for releaseGabriela Moldovan2025-12-011-0/+4
| | | |
* | | | arti: Adjust a no-longer acccurate hss docGabriela Moldovan2025-12-011-1/+1
| | | |
* | | | arti: Add missing subcommand docsGabriela Moldovan2025-12-014-0/+6
|/ / /
* | | Merge branch 'ticket_2259' into 'main'Nick Mathewson2025-11-251-1/+26
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | arti: Put supported request headers in Tor-Capabilties Closes #2259 See merge request tpo/core/arti!3473
| * | | arti: Put supported request headers in Tor-CapabiltiesNick Mathewson2025-11-181-1/+26
| |/ / | | | | | | | | | | | | | | | This is for spec conformance; it is a missing piece of prop365. Closes #2259.
* | | Merge branch 'mistrust-and-the-empty-string' into 'main'Nick Mathewson2025-11-251-2/+18
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Fix some errors in and around making directories for logfiles. Closes #2240, #2265, and #2266 See merge request tpo/core/arti!3491
| * | | arti: Make logging parent check work with our MSRV.Nick Mathewson2025-11-251-1/+1
| | | |
| * | | arti: use anyhow::Context on a make_directory failure.Nick Mathewson2025-11-241-1/+6
| | | | | | | | | | | | | | | | | | | | This will improve the error message for problems similar to arti#2240, if they recur.
| * | | arti: Allow a logfile with no directory prefix.Nick Mathewson2025-11-241-1/+12
| | | | | | | | | | | | | | | | | | | | | | | | This should fix the main part of arti#2240. This is an instance of arti#2267 ("Path::parent has funny behavior")
* | | | Merge branch 'intro-dos' into 'main'gabi-2502025-11-251-0/+21
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | arti: Add rate_limit_at_intro to the example config See merge request tpo/core/arti!3493
| * | | | arti: Clarify that the "burst" is not per second.Gabriela Moldovan2025-11-251-1/+1
| | | | |
| * | | | arti: Add rate_limit_at_intro to the example configGabriela Moldovan2025-11-251-0/+21
| |/ / / | | | | | | | | | | | | | | | | | | | | This is mostly c&p from the `rate_limit_at_intro` docs, I just added an extra paragraph to clarify the meaning of the tuple elements (i.e. `(rate, burst)`).
* | | | Merge branch 'max-concurrent-streams' into 'main'Nick Mathewson2025-11-251-0/+5
|\ \ \ \ | |/ / / |/| | | | | | | | | | | hsservice: Clarify what max_concurrent_streams_per_circuit does See merge request tpo/core/arti!3492
| * | | hsservice: Clarify what max_concurrent_streams_per_circuit doesGabriela Moldovan2025-11-251-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | At first glance, this might seem equivalent to C Tor's `HiddenServiceMaxStreams` option, but it's actually `HiddenServiceMaxStreamsCloseCircuit` (Arti doesn't implement the former).
* | | | Merge branch 'end_reason_handling' into 'main'Nick Mathewson2025-11-241-1/+38
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | http-connect: use end reason for http status if possible See merge request tpo/core/arti!3481