summaryrefslogtreecommitdiff
path: root/Cargo.lock
Commit message (Collapse)AuthorAgeFilesLines
...
* Run cargo update in preparation for 1.3.1 release.Gabriela Moldovan2024-11-281-294/+514
|
* Move helpers from tor-hsservice to tor-netdir.Wesley Aptekar-Cassels2024-11-251-0/+1
| | | | | These helpers seem potentially broadly useful, and only really discoverable if they're here.
* cargo_audit: Bump rustls to 0.23.18.Gabriela Moldovan2024-11-251-2/+2
| | | | | | | | | | rustls 0.23.13 introduced a bug that causes `Acceptor::accept` to panic if the client hello is fragmented (see [RUSTSEC-2024-0399]). We don't currently use `rustls::server::Acceptor::accept()` anywhere in arti (that I know of, at least), so I don't believe we're affected. [RUSTSEC-2024-0399]: https://rustsec.org/advisories/RUSTSEC-2024-0399
* connect points: Remember original string addressesNick Mathewson2024-11-191-0/+2
| | | | The cookie authentication protocol will need these.
* rpc-connect: Types for cookie authentication.Nick Mathewson2024-11-191-0/+3
| | | | (Cookie authentication is described in rpc-cookie-sketch.md)
* RPC connect points: Facility to load from files.Nick Mathewson2024-11-191-0/+1
|
* tor-connect-point: new crate to manage RPC connect pointsNick Mathewson2024-11-191-27/+110
| | | | See doc/dev/rpc-book/src/rpc-connect-sketch.md for details.
* update `CfgPath::path` to use a `CfgPathResolver`Steven Engler2024-11-181-0/+1
| | | | | | | | | | | | | | | | 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.
* arti-relay: add clap for cliSteven Engler2024-11-131-0/+2
| | | | The options are inspired by the arti cli interface.
* cargo: Update `thiserror` to `2`Clara Engler2024-11-121-104/+124
|
* Merge branch 'tor-proto_benchmarks' into 'main'gabi-2502024-11-111-23/+184
|\ | | | | | | | | tor-proto: Add benchmarks for cell encryption and decryption See merge request tpo/core/arti!2608
| * tor-proto: Add benchmarks for cell encryption and decryptionLionel Goffaux2024-11-041-23/+184
| |
* | cargo: update hashbrown version to 0.15.1Steven Engler2024-11-041-3/+3
| | | | | | | | Version 0.15.0 was yanked, which makes cargo-audit unhappy.
* | tor-config-path: re-enable 'test_parse' testSteven Engler2024-11-041-0/+2
| | | | | | | | | | The old code used a shortcut to access the `Figment` directly, but we need to do the whole config builder thing to be able to parse the toml.
* | tor-config: removed re-export of `CfgPath`Steven Engler2024-11-041-1/+6
| | | | | | | | | | Also updated other packages to get `CfgPath` directly from `tor-config-path' instead of 'tor-config'.
* | tor-config: remove unused dependenciesSteven Engler2024-11-041-5/+0
|/
* Merge branch 'cfgaddr' into 'main'Nick Mathewson2024-11-021-0/+2
|\ | | | | | | | | New CfgAddr type to represent SocketAddrs in configuration. See merge request tpo/core/arti!2597
| * New CfgAddr type to represent SocketAddrs in configuration.Nick Mathewson2024-10-311-0/+2
| | | | | | | | | | This type behaves like a variant of `general::SocketAddr` that allows the Unix variant to be a CfgPath.
* | tor-relay-crypto: Add a denotator to RelaySigningKeypairSpecifier.Gabriela Moldovan2024-10-311-0/+3
| | | | | | | | | | | | | | This will enable us to store more than one `K_relaysign_ed` in the keystore. Closes #1692
* | tor-persist: Add a slug timestamp type.Gabriela Moldovan2024-10-311-0/+2
|/ | | | | | | | The new `Iso8601TimeSlug` is useful for encoding a timestamp as a `Slug` (i.e. in a filename). This is needed, for example, for #1692, to encode a timestamp as key denotator.
* Bump arti crate version to 1.3.0Ian Jackson2024-10-301-2/+2
| | | | | | | | 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-2/+2
| | | | | 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-44/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Update notify to 7.xIan Jackson2024-10-301-20/+19
| | | | | Nothing in the changelog seems concerning. There's an MSRV bump, but still lower than our own MSRV.
* cargo updateIan Jackson2024-10-301-191/+188
|
* Merge branch 'tor-genaddr' into 'main'Nick Mathewson2024-10-291-0/+13
|\ | | | | | | | | Extract general::SocketAddr and its unix friends to their own crate. See merge request tpo/core/arti!2592
| * Remove re-export of "unix" from tor_rtcompat.Nick Mathewson2024-10-291-0/+1
| |
| * Extract general::SocketAddr and its unix friends to their own crate.Nick Mathewson2024-10-291-0/+12
| | | | | | | | This is mostly code motion.
* | tor-config-path: moved `tor_config::path` to hereSteven Engler2024-10-291-0/+12
| | | | | | | | This is a direct move of the `path` module from tor-config.
* | tor-config-path: added empty packageSteven Engler2024-10-291-0/+5
|/
* tor-config: use 'path' feature of shellexpandSteven Engler2024-10-281-0/+22
|
* Merge branch 'bug1531' into 'main'Ian Jackson2024-10-211-4/+4
|\ | | | | | | | | | | | | Move crates to crates to slotmap-careful Closes #1531 See merge request tpo/core/arti!2530
| * Convert a few crates to slotmap-carefulNeel Chauhan2024-10-171-4/+4
| |
* | rpc: Allow the "RpcError.kinds" to be an RpcErrorKind.Nick Mathewson2024-10-171-12/+0
| | | | | | | | | | This change will let us start removing the not-entirely-logical `Rpc.*` variants from tor_error::ErrorKind.
* | Merge branch 'fs-watcher-poll' into 'main'gabi-2502024-10-171-0/+1
|\ \ | | | | | | | | | | | | | | | | | | tor-config: Use a polling watcher on non-windows platforms that don't have inotify. Closes #1644 See merge request tpo/core/arti!2547
| * | tor-config: Use a polling watcher on non-windows platforms that don't have ↵Gabriela Moldovan2024-10-161-0/+1
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | inotify. On windows and platforms that support inotify (i.e. linux and android), we continue using the recommended watcher. On platforms that use kqueue, we switch to a polling watcher to work around a [notify bug] that manifests when using a non-recursive watcher to watch a directory. This commit is best reviewed with `git diff --ignore-all-space`. Closes #1644 [notify bug]: https://github.com/notify-rs/notify/issues/644
* | Merge branch 'general_socketaddr_ops' into 'main'Nick Mathewson2024-10-171-0/+8
|\ \ | | | | | | | | | | | | | | | | | | general::SocketAddr: Specify and implement string representations. Closes #1681 See merge request tpo/core/arti!2519
| * | rtcompat: Add a fuzzer for round-trip general::SocketAddr parsing.Nick Mathewson2024-10-161-0/+1
| | | | | | | | | | | | (This turned up another place where we need documentation.)
| * | general::SocketAddr: Add unit testsNick Mathewson2024-10-161-0/+7
| | |
* | | Merge branch 'fix-arti-relay-deps' into 'main'opara2024-10-161-1/+0
|\ \ \ | |_|/ |/| | | | | | | | 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-151-1/+0
| |/
* / Update to pwd-grp 1.xIan Jackson2024-10-151-144/+50
|/ | | | | | | Should fix the build on NetBSD, see rust-pwd-grp#4. Also, eliminates the last use of derive-adhoc, the old name for derive-deftly.
* Merge branch 'mq-toplevel' into 'main'Ian Jackson2024-10-151-0/+2
|\ | | | | | | | | Abolish the toplevel Account See merge request tpo/core/arti!2537
| * memquota: Change ToplevelAccount to be an alias for Arc<MemoryQuotaTracker>Ian Jackson2024-10-151-0/+2
| | | | | | | | Fixes a TODO.
* | arti: Bump secmem-proc to fix the build errors on FreeBSD.Gabriela Moldovan2024-10-151-2/+2
|/ | | | | | | | 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
* Merge branch 'hs-client-pow' into 'main'Ian Jackson2024-10-151-14/+6
|\ | | | | | | | | Proof-of-work client See merge request tpo/core/arti!2486
| * hs-pow: Refactor to prefer stub types rather than cfg sprawl.Wesley Aptekar-Cassels2024-10-091-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In this design, the thin multiplexing layer between PoW types is always available when onion services are in use, but the specific pow schemes (and their dependency libraries) are gated by crate features everywhere. There are now no new cfg() gates. When the pow-v1 scheme is disabled, we can parse `pow-params v1` lines into an empty type (so clients know a PoW scheme exists that might be supported if they were configured differently). We currently don't save the contents of unknown hsdesc items. On the relaycell side, the hs ext module already sets a strong precedent for keeping unrecognized data as a byte vec, and it doesn't provide a good way to signal soft parse errors like unrecognized optional extensions. There, the `v1` type is completely optional, and services lacking a pow scheme suggested by a client would see one of these 'unrecognized' blobs. This isn't necessarily helpful but it fits the rest of the design. Co-authored-by: Micah Elizabeth Scott <[email protected]>
| * tor-hspow: Big refactor, dissolve this crateWesley Aptekar-Cassels2024-10-091-19/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | My previous strategy here was to try and centralize hspow in one crate, writing it like a self-contained feature. That introduced friction in the data types, prompting the use of simplistic types at the netdoc/cell layers and full-featured types in the optional modules. This changes tactics, dissolving the low-level parts of tor-hspow into tor-hscrypto and the high-level parts into hsclient/hsservice. Full featured types are used everywhere now, but the tradeoff is that compile-time configurability is a lot more pervasive. Anything that knows about PoW types at all needs to be fully configured out. I took this opportunity to try a more complete set of crate features, allowing users to configure individual PoW schemes. Co-authored-by: Micah Elizabeth Scott <[email protected]>
| * First pass at implementing onion proof-of-work clientWesley Aptekar-Cassels2024-10-091-0/+5
| | | | | | | | | | | | | | | | This adds a module to tor-hspow for version-independent client logic. The entire module and its invocations are disabled unless the new "hs-pow" compile time feature is set. Co-authored-by: Micah Elizabeth Scott <[email protected]>
| * tor-cell: Support encoding proofs-of-work in intro_payloadWesley Aptekar-Cassels2024-10-091-0/+1
| | | | | | | | | | | | | | | | | | Like parameters, PoW solutions are versioned to account for multiple algorithms over time. A single solution of a specific version may accompany an INTRO1/2 as part of the encrypted extensions section. Its encoding may depend on the version. Co-authored-by: Micah Elizabeth Scott <[email protected]>