summaryrefslogtreecommitdiff
path: root/Cargo.lock
Commit message (Collapse)AuthorAgeFilesLines
...
* | 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]>
* | arti-rpc-client-core: remove 'c_str_macro' dependencySteven Engler2024-10-091-7/+0
|/ | | | | Arti has a MSRV of rust 1.77 which supports C string literals, so 'c_str_macro' isn't needed.
* tor-keymgr: Add a keystore for C Tor client keys.Gabriela Moldovan2024-10-081-0/+1
|
* tor-keymgr: Add a keystore for C Tor service keys.Gabriela Moldovan2024-10-081-0/+1
|
* tor-keymgr: Add configuration for C Tor service keystores.Gabriela Moldovan2024-10-081-0/+1
|
* Merge branch 'bump-futures-util' into 'main'Nick Mathewson2024-10-071-14/+14
|\ | | | | | | | | cargo-audit Bump our various futures-* deps to 0.3.31. See merge request tpo/core/arti!2499
| * cargo-audit Bump our various futures-* deps to 0.3.31.Gabriela Moldovan2024-10-071-14/+14
| | | | | | | | | | | | | | | | | | The `cargo-audit` job is currently failing because `futures-util 0.3.30` was yanked. This bumps our various futures-* deps to [0.3.31]. [0.3.31]: https://github.com/rust-lang/futures-rs/commit/631aa93a598520b24e671aa3492351f516e85538?short_path=06572a9#diff-06572a96a58dc510037d5efa622f9bec8519bc1beab13c9f251e97e657a9d4ed
* | memquota: Add a toplevel account in tor-chanmgrIan Jackson2024-10-031-0/+1
| | | | | | | | | | | | | | | | | | Plumb through a top-level account. This doesn't have any channel-specific, circuit-specific or stream-specific accounts yet. tor-circmgr's and tor-hsclient's *tests* need fake account. In arti-relay, use a dummy account for now.
* | tor-chanmgr: Provide a variant for memquota errorsIan Jackson2024-10-031-0/+1
|/
* tor-memquota: Add an example for HasMemoryCost deriveIan Jackson2024-10-021-0/+1
|
* Some HasMemoryCost impls in tor-protoIan Jackson2024-10-021-0/+2
|
* Some HasMemoryCost impls in tor-cellIan Jackson2024-10-021-0/+2
|
* Some HasMemoryCost impls in tor-linkspecIan Jackson2024-10-021-0/+1
|
* Some HasMemoryCost impls in tor-hscryptoIan Jackson2024-10-021-0/+2
|
* Some HasMemoryCost impls in tor-llcryptoIan Jackson2024-10-021-0/+2
|
* Some HasMemoryCost impls in tor-unitsIan Jackson2024-10-021-0/+2
|
* tor-memquota: Provide facilities for deriving HasMemoryCostIan Jackson2024-10-021-0/+1
|
* Merge branch 'socksproto-3' into 'main'Ian Jackson2024-10-011-0/+6
|\ | | | | | | | | | | | | New tor-socksproto API Closes #1627 See merge request tpo/core/arti!2436
| * arti-rpc-client-core: Use new tor-socksproto APIIan Jackson2024-10-011-0/+1
| |
| * tor-socksproto: Introduce new APIIan Jackson2024-10-011-0/+4
| |
| * tor-socksproto: Factor out return value handlingIan Jackson2024-10-011-0/+1
| | | | | | | | | | | | | | | | | | | | | | This centralises the handling of return values, and paves the way for further deduplication. (The two return paragraphs were identical.) There's quite a lot of initial API surface to framework.rs. Some of that is going to be hidden, but we're also going to extend this to do more work. No functional change.
* | tor-async-utils: Provide tests for ErasedSinkTrySendErrorIan Jackson2024-10-011-0/+1
| |
* | tor-async-utils: Implement SinkTrySend for mpsc::SenderIan Jackson2024-10-011-0/+2
| |
* | Merge branch 'dyn-time' into 'main'Ian Jackson2024-10-011-0/+2
|\ \ | |/ |/| | | | | Provide a type-erased SleepProvider + CoarseTimeProvider and use it for memquota queues See merge request tpo/core/arti!2460
| * tor-memquota: Erase the CoarseTimeProvider from mq_queue::SenderIan Jackson2024-09-261-0/+1
| | | | | | | | | | | | | | | | | | | | Use tor_rtcompat::DynTimeProvider instead. Ultimately, we're going to want one of these in Channel etc. The CoarseTimeProvider generic argument then becomes pervasive. Instead, erase it. This will involve an indirect function call each time an item is inserted. I think that can't be helped.
| * tor-rtcompat: Introduce DynTimeProviderIan Jackson2024-09-261-0/+1
| | | | | | | | | | | | | | | | | | This will replace the internal ad-hoc DynCoarseTimeProvider in tor-memquota. We need this to be public because it's going to be shared by many of our protocol elements (eg ClientCirc, Channel, etc.) as they need to use it for their mq queues.
* | Merge branch 'typed-index-approx' into 'main'Nick Mathewson2024-09-301-3/+3
|\ \ | | | | | | | | | | | | Fix typed-index-collections versions to ~3.1.0 See merge request tpo/core/arti!2471
| * | Fix typed-index-collections versions to ~3.1.0Nick Mathewson2024-09-301-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | Using the tilde here tells cargo not to bump to 3.2.x, which would require Rust 1.81.0. I wish we could say "don't use 3.2.x unless you're on Rust 1.81", but I don't see an easy way. Leaving this as-is breaks our CI.
* | | Merge branch 'orport' into 'main'opara2024-09-301-0/+1
|\ \ \ | |/ / |/| | | | | | | | tor-chanmgr: support multiple channels for a relay ID See merge request tpo/core/arti!2442
| * | tor-basic-utils: add `n_key_list` macroSteven Engler2024-09-231-0/+1
| | | | | | | | | | | | | | | This is based off of the `n_key_set` macro, but lets you store multiple items per key.
* | | Merge branch 'bug_1632' into 'main'Nick Mathewson2024-09-301-13/+98
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | tor-llcrypto: replace simple_asn1 dependency with der-parser Closes #1632 See merge request tpo/core/arti!2462
| * | | tor-llcrypto: replace simple_asn1 dependency with der_parserMorgan2024-09-281-13/+98
| | |/ | |/|
* | | Merge branch 'arti-1.2.8-bumps' into 'main'arti-v1.2.8Nick Mathewson2024-09-301-53/+53
|\ \ \ | | | | | | | | | | | | | | | | Version bumps for arti-1.2.8 release See merge request tpo/core/arti!2466
| * | | Bump "arti" crate to 1.2.8Nick Mathewson2024-09-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Generated with ``` cargo set-version --bump patchlevel -p arti ```
| * | | Bump arti- and tor- crates to 0.23.0Nick Mathewson2024-09-301-42/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Per our policy, every one of these gets a minor bump. Generated with: ``` for crate in $(./maint/list_crates | grep '^\(tor\|arti\)-' ); do cargo set-version --bump minor -p $crate; done ``` (Note the use of `-` at the end end of the grep pattern to prevent matching the `arti` crate.)
| * | | Minor bumps on non-tor/arti cratesNick Mathewson2024-09-301-10/+10
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These crates are not in the tor/arti namespace, but we have given them MSRV bumps: ``` oneshot-fused-workaround slotmap-careful fslock-guard hashx equix caret fs-mistrust safelog test-temp-dir retry-error ``` We are counting this as a breaking change. Since all of these crates are at 0.x.x, we have indicated the breaking change with a minor version bump. This commit was generated with the following script: ``` BUMPS=" oneshot-fused-workaround slotmap-careful fslock-guard hashx equix caret fs-mistrust safelog test-temp-dir retry-error " for crate in $BUMPS; do cargo set-version --bump minor -p $crate; done ```
* | | downgrade typed-index-collections to 3.1.0Nick Mathewson2024-09-301-2/+2
| | | | | | | | | | | | version 3.2.0 requires rust 1.81.
* | | Run "cargo update" in preparation for 1.2.8Nick Mathewson2024-09-301-223/+192
|/ /
* | Merge branch 'msrv-1.77-and-rusqlite-update' into 'main'David Goulet2024-09-261-12/+12
|\ \ | | | | | | | | | | | | Upgrade MSRV to 1.77 , and rusqlite to 0.32.1 See merge request tpo/core/arti!2451
| * | Upgrade to rusqlite 0.32.1.Nick Mathewson2024-09-251-14/+14
| | |
* | | Upgrade to derive_more version 1.0.0Nick Mathewson2024-09-251-7/+31
| | | | | | | | | | | | | | | | | | The `derive_more` crate broke backward compatibility with this version, so this change involved quite a few manual fixups. With luck, they'll keep compatibility for some while in the future.
* | | Upgrade to latest version of float-cmp.Nick Mathewson2024-09-251-2/+2
|/ /