summaryrefslogtreecommitdiff
path: root/crates/arti
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'versions' into 'main'Ian Jackson2024-10-301-17/+17
|\ | | | | | | | | Version bumps for release of 1.3.0 See merge request tpo/core/arti!2599
| * Bump arti crate version to 1.3.0Ian Jackson2024-10-301-1/+1
| | | | | | | | | | | | | | | | I think we should bump the minor version because of the new features, particularly supporting .onion domains as a client by default, and the OOM DoS resistance features (#351). cargo set-version --offline --bump=minor -p arti
| * Bump minor versions of crates with new APIs/implsIan Jackson2024-10-301-1/+1
| | | | | | | | | | cargo set-version --bump=patch -p slotmap-careful cargo set-version --bump=patch -p safelog
| * Bump unstable tor-* and arti-* crates to 0.24.0Ian Jackson2024-10-301-15/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | cargo set-version -p tor-async-utils 0.24.0 cargo set-version -p tor-basic-utils 0.24.0 cargo set-version -p tor-bytes 0.24.0 cargo set-version -p tor-cell 0.24.0 cargo set-version -p tor-cert 0.24.0 cargo set-version -p tor-chanmgr 0.24.0 cargo set-version -p tor-checkable 0.24.0 cargo set-version -p tor-circmgr 0.24.0 cargo set-version -p tor-config 0.24.0 cargo set-version -p tor-config-path 0.24.0 cargo set-version -p tor-consdiff 0.24.0 cargo set-version -p tor-dirclient 0.24.0 cargo set-version -p tor-dirmgr 0.24.0 cargo set-version -p tor-error 0.24.0 cargo set-version -p tor-general-addr 0.24.0 cargo set-version -p tor-geoip 0.24.0 cargo set-version -p tor-guardmgr 0.24.0 cargo set-version -p tor-hsclient 0.24.0 cargo set-version -p tor-hscrypto 0.24.0 cargo set-version -p tor-hsrproxy 0.24.0 cargo set-version -p tor-hsservice 0.24.0 cargo set-version -p tor-key-forge 0.24.0 cargo set-version -p tor-keymgr 0.24.0 cargo set-version -p tor-linkspec 0.24.0 cargo set-version -p tor-llcrypto 0.24.0 cargo set-version -p tor-log-ratelim 0.24.0 cargo set-version -p tor-memquota 0.24.0 cargo set-version -p tor-netdir 0.24.0 cargo set-version -p tor-netdoc 0.24.0 cargo set-version -p tor-persist 0.24.0 cargo set-version -p tor-proto 0.24.0 cargo set-version -p tor-protover 0.24.0 cargo set-version -p tor-ptmgr 0.24.0 cargo set-version -p tor-relay-crypto 0.24.0 cargo set-version -p tor-relay-selection 0.24.0 cargo set-version -p tor-rpcbase 0.24.0 cargo set-version -p tor-rtcompat 0.24.0 cargo set-version -p tor-rtmock 0.24.0 cargo set-version -p tor-socksproto 0.24.0 cargo set-version -p tor-units 0.24.0 cargo set-version -p arti-client 0.24.0 cargo set-version -p arti-relay 0.24.0 cargo set-version -p arti-rpc-client-core 0.24.0 cargo set-version -p arti-rpcserver 0.24.0
* | cargo: Run fixup-features (formatting)Ian Jackson2024-10-301-1/+2
| | | | | | | | Manual fixup. I filed #1719 about the fact that I had to do this.
* | cargo: Run fixup-featuresIan Jackson2024-10-301-2/+2
| | | | | | | | | | | | | | This is output from nailing-cargo -Eu run -p fixup-features Cargo.toml There are some formatting glitches which I'll fix in a moment.
* | cargo: Make default-runtime feature part of fullIan Jackson2024-10-301-0/+1
|/ | | | It's weird that full doesn't imply default. But here we are.
* Update notify to 7.xIan Jackson2024-10-301-1/+1
| | | | | Nothing in the changelog seems concerning. There's an MSRV bump, but still lower than our own MSRV.
* Make memquota feature part of full in artiIan Jackson2024-10-222-2/+3
| | | | Mark it no longer experimental, but part of full. And document it.
* 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-222-1/+21
| | | | | Work around awkward cargo behaviour and allow us to more reliably test disabled features, even if they're enabled by default at lower levels.
* test-all-crates: conditional options, to test more cratesIan Jackson2024-10-221-1/+1
| | | | | | | | | | | | | This new feature lets us provide the "enable these options which are needed to make the tests pass" featrure, which is different for each of the afflicted crates. Then we can test these crates tor-hsservice arti arti-client which minimal features. This will be important in a moment, as we're going to want to be relying on actually minimal features tests in arti cfg.rs.
* 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-173-2/+7
|\ | | | | | | | | Disable a lot of dead code warnings and add a default-runtime feature in arti See merge request tpo/core/arti!2551
| * arti: Introduce a new default-runtime Cargo featureIan Jackson2024-10-172-2/+5
| | | | | | | | | | | | Now one can do a minimal build with cargo build -p arti --no-default-features --features=default-runtime rather than needing to specify tokio,native-tls.
| * 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-173-0/+10
|\ \ | | | | | | | | | | | | | | | | | | 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: Enable tor-config/testing when testing.Gabriela Moldovan2024-10-161-0/+1
| |/ | | | | | | | | This enables us to make use of the unfortunately-necessary test-specific code path.
* | Merge branch 'fix-arti-relay-deps' into 'main'opara2024-10-164-50/+1
|\ \ | |/ |/| | | | | arti: remove 'relay' subcommand and 'arti-relay' dependency See merge request tpo/core/arti!2542
| * arti: remove 'relay' subcommand and 'arti-relay' depSteven Engler2024-10-154-50/+1
| |
* | Apply `default-features = false` to all tor-memquota depsIan Jackson2024-10-161-1/+1
|/ | | | | | | This will allow us to make `tor-memquota/memquota` enabled by default, without forcing it to be compiled in everywhere. I don't change that in this MR, though.
* arti: Bump secmem-proc to fix the build errors on FreeBSD.Gabriela Moldovan2024-10-151-1/+1
| | | | | | | | The FreeBSD fixes were released in [`secmem-proc 0.3.4`]. Closes #1686 [`secmem-proc 0.3.4`]: https://github.com/niluxv/secmem-proc/pull/11
* arti: Make hs-pow a experimental feature.Wesley Aptekar-Cassels2024-10-091-2/+1
|
* Enable onion client proof-of-work in the standalone "arti" toolWesley Aptekar-Cassels2024-10-091-0/+3
| | | | | | | | | The proof-of-work libraries are off by default in part because they depend on libraries that are currently GPL licensed. This precludes the use of this option in closed-source binaries, but here in the open-source arti tool (or consumers that bundle the binary) it's fine. Co-authored-by: Micah Elizabeth Scott <[email protected]>
* Merge branch 'secondary-keystores' into 'main'gabi-2502024-10-083-1/+58
|\ | | | | | | | | | | | | tor-keymgr: Support reading C Tor keys. Closes #858 See merge request tpo/core/arti!2481
| * 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
| * arti: Add a ctor-keystore feature.Gabriela Moldovan2024-10-081-0/+1
| | | | | | | | This enables us to build `arti` with C Tor keystore support.
| * 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
| |
* | Merge branch 'update-feature-flag-docs' into 'main'Ian Jackson2024-10-081-3/+3
|\ \ | |/ |/| | | | | docs: Add vanguard feature flag to README. See merge request tpo/core/arti!2507
| * arti: Remove outdated information from README.Wesley Aptekar-Cassels2024-10-081-2/+2
| | | | | | | | | | We now support pluggable transports, so it's not true that there's no anti-censorship support.
| * docs: Add vanguard feature flag to README.Wesley Aptekar-Cassels2024-10-071-3/+3
| |
* | 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
| * | tor-socksproto: Handle 0-byte reads (EOF) correctlyIan Jackson2024-10-011-1/+1
| | | | | | | | | | | | | | | | | | | | | This restores the functionality of socks users: detect closed sockets. 0c595818f713916d94b7b0e4062f953fad7c9799 which we reverted as part of rebasing this branch onto main.
| * | arti SOCKS proxy: Defer splitting the socks streamIan Jackson2024-10-011-13/+13
| | | | | | | | | | | | This is neater, I think.