summaryrefslogtreecommitdiff
path: root/crates/arti/src
Commit message (Collapse)AuthorAgeFilesLines
* arti: remove references to old `trace_filter` in commentsSteven Engler2026-06-252-2/+2
|
* arti: subcommands: keys: Fix compact outputhjrgrn2026-06-221-1/+1
|
* Merge branch 'keys-list-tests' into 'main'opara2026-06-181-0/+5
|\ | | | | | | | | arti: Rewrite hand-written tests using `trycmd` See merge request tpo/core/arti!4126
| * arti: Sort the arti keys list outputGabriela Moldovan2026-06-171-0/+5
| | | | | | | | | | This will make the output deterministic and enable us to write some `trycmd` tests in the form of markdown output snippets.
* | Merge branch 'misc_string_slices_1' into 'main'Clara Engler2026-06-181-2/+1
|\ \ | |/ |/| | | | | Fix string_slice exceptions outside of netdoc See merge request tpo/core/arti!4092
| * arti: remove string slicesNick Mathewson2026-06-101-2/+1
| |
* | arti: Don't mention entry validity in the help messageGabriela Moldovan2026-06-171-1/+1
| | | | | | | | | | | | This actually applies to unrecognized entries too, and besides, most users aren't going to think in terms of "valid" vs "invalid" entries, so it's best to omit this qualifier.
* | arti: subcommands: keys: Rework output of keys listhjrgrn2026-06-171-79/+110
|/
* everywhere: Add #[allow(clippy::string_slice)]Clara Engler2026-06-091-0/+1
| | | | | | | | This commit adds #[allow(clippy::string_slice)] to all functions in the code where string slices are used, alongside a TODO comment. We do this add the function header to have it consistent, as things like expression based allow's are still experimental.
* maint: Run maint/add_warning to deny string slicesClara Engler2026-06-0911-0/+11
| | | | | | | | | | | | This commit executes maint/add_warning with the just added change to deny string slices except in tests. I recommend auditing this by checking out the previous commit followed by running the script yourself and then verifying that the diff is identical to this commit. This commit makes cargo clippy fail. We will add exceptions in the next commit.
* arti: rpc functionality to bootstrap a defer_bootstrapped client.Nick Mathewson2026-06-085-7/+100
|
* Option to defer bootstrapping at startup.Nick Mathewson2026-06-085-17/+127
| | | | | | This option will primarily be used by integrators who want to modify the configuration, either directly or via RPC, before launching Arti completely.
* arti: Bump the versions of our opentelemetry depsGabriela Moldovan2026-06-031-1/+1
| | | | Part of #2559
* Merge branch 'client_typestate' into 'main'Nick Mathewson2026-05-271-1/+1
|\ | | | | | | | | Client: Refactor most managers into a typestate, and construct it on bootstrap. See merge request tpo/core/arti!4011
| * client: Factor out the "running a client" code into an inner typestateNick Mathewson2026-05-261-1/+1
| | | | | | | | | | | | We'll use this to distinguish "not running" from "running", in order to make it easier to be sure that non-bootstrapping clients will definitely not try to connect to the network.
* | Give resolve_return_results options to control output_tree.Nick Mathewson2026-05-271-2/+2
|/ | | | | | | I've left the options here as booleans, but moved them into a struct. (IMO, booleans are at their riskiest when they are passed as function arguments, and much less risky when they are used as struct fields.)
* Move metrics config types to tor-config.Wesley Aptekar-Cassels2026-05-261-30/+1
| | | | | | | | | | | | | | This will allow these types to be shared by arti and arti-relay. This does change these types from being behind the experimental-api flag. I think this is okay, as tor-config is not a stable crate anyways, but it's worth keeping in mind. There is also an argument to be made for having two separate types, one in arti and one in arti-relay, as we do for LoggingConfig. I think that using a single type has benefits, and we should strive to eventually merge the LoggingConfigs, for instance, and perhaps other types, but it doesn't seem critical in either direction at the moment.
* Merge branch 'no-version-override' into 'main'wesleyac2026-05-212-15/+0
|\ | | | | | | | | | | | | Remove `use_obsolete_software`. Closes #1960 See merge request tpo/core/arti!3995
| * Remove `use_obsolete_software`.Nick Mathewson2026-05-142-19/+4
| | | | | | | | | | | | | | | | Discussion on #1960 suggests that this option is not a good idea: it encourages developers to work around deliberate signals that the software they're shipping won't work on the network. Closes #1960.
* | Merge branch 'socket-buf-size' into 'main'opara2026-05-214-5/+59
|\ \ | | | | | | | | | | | | | | | | | | Set socket buffer sizes (`SO_SNDBUF` and `SO_RCVBUF`) for proxy sockets Closes #2500 See merge request tpo/core/arti!3957
| * | arti: add 'proxy.socket_{send,recv}_buf_size' config optionsSteven Engler2026-05-074-23/+58
| | |
| * | arti: use 128 KB socket buffers for proxy socketsSteven Engler2026-05-071-2/+18
| | |
| * | tor-rtcompat+misc: add `NetStreamProvider::ListenOptions`Steven Engler2026-05-071-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | This adds the trait type `ListenOptions` to `NetStreamProvider` and adds this `ListenOptions` as an argument to `NetStreamProvider::listen()`. You probably want to look at the changes in tor-rtcompat first, then the rest of this commit is updating the various places we use `NetStreamProvider`.
* | | Merge branch 'keymgr-raw-ids' into 'main'opara2026-05-191-13/+11
|\ \ \ | | | | | | | | | | | | | | | | keymgr: more docs for the `RawEntryId` APIs, and some dead code removal See merge request tpo/core/arti!3997
| * | | keymgr: Remove RawKeystoreEntryGabriela Moldovan2026-05-181-13/+11
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I think this adds unnecessary indirection, and it's a bit confusing to have two separate keystore entry types (we have `KeystoreEntry` too). This type exists just to server as a wrapper over the `RawEntryId` of an unrecognized keystore entry, and the `KeystoreId` of the keystore it was found in. This commit folds `RawKeystoreEntry` into `UnrecognizedEntry`, which was previously a thin wrapper over `RawKeystoreEntry`.
* | | Merge branch 'rpc-config-preliminary' into 'main'Nick Mathewson2026-05-182-81/+87
|\ \ \ | |/ / |/| | | | | | | | | | | | | | Hopefully non-controversial parts of RPC configuration prep work Closes #2532 See merge request tpo/core/arti!3979
| * | 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.
* | | Merge branch 'arc_torclient' into 'main'Nick Mathewson2026-05-1311-28/+35
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Make all TorClient constructors wrap the TorClient in an Arc. Closes #2469 See merge request tpo/core/arti!3990
| * | | Make TorClient no longer implement Clone.Nick Mathewson2026-05-135-18/+13
| | | |
| * | | Make all TorClient constructors wrap the TorClient in an Arc.Nick Mathewson2026-05-139-18/+30
| |/ / | | | | | | | | | | | | | | | 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.
* / / Turn an expectation into an allowIan Jackson2026-05-131-1/+1
|/ / | | | | | | Fixes `cargo clippy --locked --all-features -p arti`
* / circmgr: Add config option for the HsDir requery periodGabriela Moldovan2026-05-072-0/+5
|/
* Upgrade to hickory-proto 0.26.1Nick Mathewson2026-05-021-17/+11
| | | | | | | | | | | | | | This fixes https://rustsec.org/advisories/RUSTSEC-2026-0120.html and https://rustsec.org/advisories/RUSTSEC-2026-0119.html Neither of these is relevant for Arti, but we may as well upgrade. This change required some code changes, since the upgrade from 0.25 changed some of the old APIs. Closes #2517.
* implement syslog supportAndrew Kloet2026-04-283-4/+55
|
* Log socks isolationJim Newsome2026-04-081-0/+1
|
* Merge branch 'rustls-defaults' into 'main'Nick Mathewson2026-04-081-7/+23
|\ | | | | | | | | | | | | Allow compile-time selection of rustls CryptoProvider; use aws-lc-rs by default. Closes #2448 See merge request tpo/core/arti!3857
| * arti: Allow choice of CryptoProvider; use aws-lc-rs by default.Nick Mathewson2026-04-081-7/+23
| |
* | Merge branch 'feat/protocol-warnings' into 'main'Nick Mathewson2026-04-083-0/+25
|\ \ | | | | | | | | | | | | tor-error/arti: add logging.protocol_warnings for TorProtocolViolation See merge request tpo/core/arti!3805
| * | arti: set_protocol_warning_mode to Warn or Off in setup_loggingmoumenalaoui2026-04-081-5/+6
| | |
| * | arti: add protocol_warnings config and wire setup_loggingmoumenalaoui2026-03-273-0/+24
| |/
* | Merge branch 'fix-help-msg' into 'main'Nick Mathewson2026-04-081-4/+6
|\ \ | | | | | | | | | | | | | | | | | | arti: Fix arti -h Closes #2038 See merge request tpo/core/arti!3860
| * | arti: Fix help message display orderhjrgrn2026-04-081-4/+6
| |/ | | | | | | | | | | | | | | Call `clap_app`'s metadata methods after `augment_subcommands`. If `about` is set before `augment_subcommands`, the subcommand enums' doc comment overrides it. Now, all metadata (e.g. about, version) is set after augmentation for consistency and correct help output.
* | arti: fix clippy warnings in `report_proxy_error()`Steven Engler2026-03-301-3/+5
| |
* | arti: use report macros in `report_proxy_error()`Steven Engler2026-03-301-5/+6
| |
* | arti: don't warn for `NotConnected` errorsSteven Engler2026-03-301-0/+1
|/
* Merge branch 'webtime-v3' into 'main'Nick Mathewson2026-03-261-5/+3
|\ | | | | | | | | | | | | Port to use web-time for compatibility with wasm32 Closes #2356 See merge request tpo/core/arti!3820
| * arti: Port to web-time-compat.Nick Mathewson2026-03-261-5/+3
| |
* | Merge branch 'http-connect-wrapup' into 'main'Nick Mathewson2026-03-266-25/+99
|\ \ | |/ |/| | | | | | | | | arti: Add option and documentation for http connect, then mark it stable. Closes #2409 See merge request tpo/core/arti!3811
| * Feature-gate the proxy.enable_http_connect optionNick Mathewson2026-03-261-1/+14
| |