summaryrefslogtreecommitdiff
path: root/crates/arti/src
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'mod-module-files' into 'main'Nick Mathewson2025-01-072-0/+2
|\ | | | | | | | | clippy: deny `mod_module_files` See merge request tpo/core/arti!2689
| * clippy: deny `mod_module_files`Steven Engler2025-01-062-0/+2
| | | | | | | | | | | | Denies 'mod.rs' files for consistency. https://rust-lang.github.io/rust-clippy/master/index.html#mod_module_files
* | fix: fix typosDimitris Apostolou2025-01-061-1/+1
|/
* rpc: Add a test for config parsing and defaults.Nick Mathewson2024-12-192-1/+90
|
* rpc: Clarify listen_defaults behavior.Nick Mathewson2024-12-191-1/+2
|
* rpc: Rename RpcListnerConfig=>RpcListenerSetConfig to clarify plurality.Nick Mathewson2024-12-191-14/+17
|
* rpc: Test that we can parse our defaults.Nick Mathewson2024-12-192-1/+35
|
* rpc: comments to explain where connect points are disabled.Nick Mathewson2024-12-192-1/+7
|
* rpc: Make names reflect configuration keys better.Nick Mathewson2024-12-191-17/+11
|
* rpc: Document that default-index is 1-basedNick Mathewson2024-12-192-1/+5
|
* Rename Guard=>ListenerGuard.Nick Mathewson2024-12-192-4/+4
|
* rpc: Add a comment to explain what load_options is doing.Nick Mathewson2024-12-191-0/+2
|
* rpc: More logging when binding addressesNick Mathewson2024-12-192-1/+25
|
* arti::rpc: Refactor listener options to support defaults properlyNick Mathewson2024-12-191-31/+75
| | | | | | | | | | | We want to have every option that applies to a connect point (other than file or dir) exist both as a default version, and as a per-file override. This approach lets us do so: We store _builders_ for these options in the config, and then use ExtendBuilder to merge them together. (There aren't yet any options other than 'enable', but there will be before long.)
* arti::rpc: Rename "overrides" field and type.Nick Mathewson2024-12-191-18/+17
| | | | | Per discussion with Diziet, these aren't really "overriding" anything; they're the actual options for a single connect point.
* arti: Use connect points to listen for RPC connections.Nick Mathewson2024-12-193-88/+330
|
* arti: Disable RPC reconfiguration for nowNick Mathewson2024-12-192-1/+5
|
* rpc: Configuration options for artiNick Mathewson2024-12-192-1/+157
| | | | | | This adds the options currently specified in rpc-connect-point.rs, though they don't do anything yet. We still have to implement the correct defaulting behavior.
* arti: Move RpcConfig to rpc.rsNick Mathewson2024-12-192-29/+33
|
* add_warnings, *: Allow clippy::needless_lifetimesNick Mathewson2024-12-032-0/+2
| | | | | | | | In 1.83, this warning triggers on many of our crates. We're thinking of fixing them all, but for now, we're going to disable the warning. This is part of #1765.
* arti: Add onion_service.enable_pow option.Wesley Aptekar-Cassels2024-11-251-0/+4
| | | | This currently is not implemented.
* arti-client: add path resolver to `TorClient` and `TorClientConfig`Steven Engler2024-11-182-2/+2
| | | | | | Rather than using `arti_client::config::path_resolver()`, third-party code can get the path resolver using `TorClientConfig`s `AsRef<CfgPathResolver>` impl instead.
* update `CfgPath::path` to use a `CfgPathResolver`Steven Engler2024-11-183-6/+16
| | | | | | | | | | | | | | | | This is a big change across multiple crates since there isn't a good way to break it up. This changes the signature of `CfgPath::path` to: ``` pub fn path(&self, path_resolver: &CfgPathResolver) -> Result<PathBuf, CfgPathError> { ``` Making this change means that our global `CfgPathResolver` needs to be stored in the 'arti-client' library instead of `tor-config-path`, and must be passed through to anything that calls `path` to expand the variables.
* tor-config: removed re-export of `CfgPath`Steven Engler2024-11-042-5/+6
| | | | | Also updated other packages to get `CfgPath` directly from `tor-config-path' instead of 'tor-config'.
* tor-memquota: Declare memquota feature stable, and defaultIan Jackson2024-10-221-1/+0
| | | | | | | | And document the Cargo features. This compiles in the memquota support for people who depend directly on tor-memquota. But all our in-tree dependencies turn off default features, so this doesn't have any effect for in-tree crates.
* arti cfg tests: Clarify here and thereIan Jackson2024-10-221-1/+2
| | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2561#note_3097443
* arti cfg tests: Fix typoIan Jackson2024-10-221-1/+1
| | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2561#note_3097442
* minimal features test: Introduce new --cfg arti_features_preciseIan Jackson2024-10-221-1/+6
| | | | | Work around awkward cargo behaviour and allow us to more reliably test disabled features, even if they're enabled by default at lower levels.
* rpcserver: Wrap InvokeError as internal errorNick Mathewson2024-10-171-3/+10
| | | | | | | | | I'm about to remove HasKind from InvokeError, which would otherwise break this code. These errors are all in fact internal errors, since in this context they can only stem from incorrectly formed calls to `invoke_special_method`.
* Merge branch 'dead' into 'main'Alexander Hansen Færøy2024-10-171-0/+2
|\ | | | | | | | | Disable a lot of dead code warnings and add a default-runtime feature in arti See merge request tpo/core/arti!2551
| * Disable a lot of dead code warningsIan Jackson2024-10-171-0/+2
| | | | | | | | | | | | | | Now cargo check --workspace --no-default-features --all-targets cargo build -p arti --no-default-features --features=memquota,tokio,native-tls are both clean.
* | Merge branch 'fs-watcher-poll' into 'main'gabi-2502024-10-172-0/+9
|\ \ | | | | | | | | | | | | | | | | | | tor-config: Use a polling watcher on non-windows platforms that don't have inotify. Closes #1644 See merge request tpo/core/arti!2547
| * | arti: Add a warning about watch_configuration's performance issues.Gabriela Moldovan2024-10-171-0/+7
| | | | | | | | | | | | Part of #1644
| * | tor-config: Document the limitations of the FileWatcher.Gabriela Moldovan2024-10-161-0/+2
| |/
* / arti: remove 'relay' subcommand and 'arti-relay' depSteven Engler2024-10-153-46/+1
|/
* tor-keymgr: Move C Tor keystore configs under ctor key.Gabriela Moldovan2024-10-082-4/+5
| | | | | | | This way we have a more intuitive layout, where all C Tor keystore configuration is under the `ctor` key. Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2481#note_3090486
* tor-keymgr: Add configuration for C Tor client keystores.Gabriela Moldovan2024-10-082-4/+25
| | | | | This is intentionally partially mis-indented to make this more reviewable (in case the reviewer isn't using `ignore-all-space`).
* arti-client: Use the configured C Tor keystores, if any.Gabriela Moldovan2024-10-081-8/+1
|
* arti: Remove extraneous whitespace from example config.Gabriela Moldovan2024-10-081-1/+1
|
* tor-keymgr: Add configuration for C Tor service keystores.Gabriela Moldovan2024-10-082-0/+41
|
* Default allow_onion_addrs to true.Wesley Aptekar-Cassels2024-10-071-10/+1
| | | | | | | This was disabled due to lack of vanguard support. Now that we support vanguards, we should enable this by default. Fixes: #1402
* Merge branch 'prop351-refs' into 'main'Jim Newsome2024-10-031-7/+10
|\ | | | | | | | | | | | | Replace references to prop351 with socks-extensions.md Closes #1629 See merge request tpo/core/arti!2492
| * Replace references to prop351 with socks-extensions.mdNick Mathewson2024-10-021-7/+10
| | | | | | | | | | | | | | Now that the proposal is implemented and merged into the specs, the proposal itself is only historical. Closes #1629.
* | Merge branch 'div_ceil' into 'main'Nick Mathewson2024-10-031-1/+1
|\ \ | | | | | | | | | | | | Use {u64,usize}::div_ceil See merge request tpo/core/arti!2473
| * | Use {u64,usize}::div_ceilNick Mathewson2024-09-301-1/+1
| | | | | | | | | | | | | | | Previously we had to avoid it, but now that our MSRV is above 1.73 we can use it with abandon.
* | | rpc: clarify documentation and fix typosNick Mathewson2024-10-021-1/+3
| | | | | | | | | | | | Based on review from @opara.
* | | Revise RPC documentation to be more informative.Nick Mathewson2024-10-022-5/+17
| |/ |/| | | | | | | | | Previous documentation was more-or-less meant for the Arti developer only. This new documentation is intended for actual users of RPC functionality. It's meant to be extracted with `maint/rpc-doc-tool`.
* | Merge branch 'rpc-doc-socks-objectid' into 'main'Nick Mathewson2024-10-021-0/+16
|\ \ | | | | | | | | | | | | Copy section on objectid/isolation restrictions from prop351. See merge request tpo/core/arti!2474
| * | Copy section on objectid/isolation restrictions from prop351.Nick Mathewson2024-09-301-0/+16
| |/ | | | | | | | | Eventually it belongs in an RPC spec, but for now the relevant discussion goes here.
* | Merge branch 'socksproto-3' into 'main'Ian Jackson2024-10-011-61/+28
|\ \ | | | | | | | | | | | | | | | | | | New tor-socksproto API Closes #1627 See merge request tpo/core/arti!2436