summaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
* tor-memquota: Downgrade to 0.18Gabriela Moldovan2024-06-051-1/+1
| | | | | | | | | | | | | I was unable to publish tor-memquota 0.19 because I don't have ownership ``` error: failed to publish to registry at https://crates.io Caused by: the remote server responded with an error (status 403 Forbidden): this crate exists but you don't seem to be an owner. If you believe this is a mistake, perh aps you need to accept an invitation to be an owner before publishing. ``` Let's downgrade it for now.
* Run cargo update for {hashx,equix}/bench.Gabriela Moldovan2024-06-052-212/+184
| | | | | | | | | Done using ``` (cd crates/hashx/bench && cargo update) (cd crates/equix/bench && cargo update) ```
* Bump the arti crate to 1.2.4.Gabriela Moldovan2024-06-053-3/+3
| | | | | | | | Done using ``` cargo set-version -p arti --bump patch ```
* Bump all the unstable tor- and arti- crates to 0.19.Gabriela Moldovan2024-06-0544-355/+355
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The unstable crates are: - tor-error - tor-config - tor-units - tor-geoip - tor-rtcompat - tor-rtmock - tor-log-ratelim - tor-rpcbase - tor-memquota - tor-llcrypto - tor-protover - tor-bytes - tor-hscrypto - tor-socksproto - tor-checkable - tor-cert - tor-linkspec - tor-cell - tor-proto - tor-netdoc - tor-consdiff - tor-netdir - tor-relay-selection - tor-persist - tor-chanmgr - tor-ptmgr - tor-guardmgr - tor-circmgr - tor-dirclient - tor-dirmgr - tor-keymgr - tor-hsclient - tor-hsservice - tor-hsrproxy - arti-client - arti-rpcserver - arti-hyper - tor-basic-utils - tor-async-utils Done using ``` for p in "${unstable[@]}"; do cargo set-version -p $p 0.19; done ``` where `unstable` contains the list above
* Bump the versions of the non-{arti-,tor-} crates.Gabriela Moldovan2024-06-058-8/+8
| | | | | | | | | | | | | | | | | | | | | * crates that have no changes: none * crates that only have non-functional changes (bump the patch version): - test-temp-dir - fslock-guard - hashx - equix - caret - fs-mistrust - safelog - retry-error Done using ``` for c in "${non_functional[@]}"; do maint/bump_nodep $c; done ``` where `non_functional` contains the list above
* Merge branch 'more-exclusions' into 'main'gabi-2502024-06-052-17/+101
|\ | | | | | | | | tor-circmgr: Exclude the target relay when building vanguards circuits. See merge request tpo/core/arti!2186
| * tor-circmgr: Explicitly handle all VanguardMode variants.Gabriela Moldovan2024-06-051-1/+10
| | | | | | | | This is less error-prone than the alternative.
| * tor-circmgr: Reference a ticket number in a refactoring TODO.Gabriela Moldovan2024-06-051-1/+1
| |
| * tor-circmgr: Note that guard_and_target exclusion sometimes doesn't exclude ↵Gabriela Moldovan2024-06-051-0/+3
| | | | | | | | target.
| * tor-circmgr: Exclude the target when extending SHORT stubs.Gabriela Moldovan2024-06-041-4/+18
| | | | | | | | | | When extending SHORT circuit stubs, the last hop shouldn't be the same as the circuit target.
| * tor-circmgr: Exclude the target relay when building vanguards circuits.Gabriela Moldovan2024-06-041-13/+71
| | | | | | | | | | | | Otherwise, some of the circuits will fail (because if the target is selected as one of the L2, L3, or M hops, it won't be able to extend the circuit to itself).
* | arti-rpcserver: Reformat Cargo.toml.Gabriela Moldovan2024-06-051-1/+2
| |
* | Run fixup-features in preparation for release.Gabriela Moldovan2024-06-051-1/+1
|/
* tor-circmgr: Apply deferred fmt.Gabriela Moldovan2024-06-041-1/+3
|
* tor-circmgr: Add TODOs about improving circuit length checks.Gabriela Moldovan2024-06-041-0/+2
|
* tor-circmgr: Remove HsPool::vanguards_enabled() (fmt).Gabriela Moldovan2024-06-041-2/+10
|
* tor-circmgr: Remove HsPool::vanguards_enabled().Gabriela Moldovan2024-06-041-24/+33
| | | | | | | | | Previously, the HsCircPool had a bug that caused SHORT lite-vanguards circuits to be incorrectly extended by one hop when being repurposed as EXTENDED circuits (EXTENDED circuits only need to be extended by extra hop if full vanguards are in use). Closes #1456 and #1458
* tor-circmgr: Validate the circuit stub length before returning it.Gabriela Moldovan2024-06-041-8/+68
|
* Merge branch 'pick-path-fix' into 'main'gabi-2502024-06-041-12/+49
|\ | | | | | | | | | | | | tor-circmgr: Exclude the circ target when building paths. Closes #1425 See merge request tpo/core/arti!2179
| * tor-circmgr: If the path is invalid, display the offending hops in the error.Gabriela Moldovan2024-06-031-4/+5
| |
| * tor-circmgr: Ensure pick_path() builds paths with unique hops (fmt).Gabriela Moldovan2024-06-031-1/+5
| |
| * tor-circmgr: Ensure pick_path() builds paths with unique hops.Gabriela Moldovan2024-06-031-10/+24
| | | | | | | | | | We now return an internal error if the path we've just built contains the same hop in multiple positions.
| * tor-circmgr: Exclude the circ target when building paths.Gabriela Moldovan2024-06-031-2/+20
| | | | | | | | Closes #1425
* | Merge branch 'circuit-stub-selection-check' into 'main'gabi-2502024-06-041-2/+41
|\ \ | |/ |/| | | | | tor-circmgr: Ensure circuit stubs are compatible with the target. See merge request tpo/core/arti!2181
| * tor-circmgr: Display the offending hop if the circuit is not compatible with ↵Gabriela Moldovan2024-06-031-4/+5
| | | | | | | | target.
| * tor-circmgr: Use has_any_relay_id_from to check for relay equality.Gabriela Moldovan2024-06-031-2/+2
| | | | | | | | | | | | | | When checking for relay equality, we are happy to accept some false positives (which result in building/selecting a different circuit). We want to be less tolerant of false negatives, to avoid accidentally using a circuit that doesn't have the properties we need.
| * tor-circmgr: Ensure circuit stubs are compatible with the target.Gabriela Moldovan2024-06-031-1/+39
| | | | | | | | | | | | This is a follow-up from !2167. It should prevent issues like #1417 from going unnoticed.
* | tor-config: Move macro above ExplicitOrAuto definition.Gabriela Moldovan2024-06-031-58/+58
|/ | | | | | | The macro needs to be defined before `ExplicitOrAuto`, otherwise we can't reference it in its docs. Fixes the broken doc links.
* arti-client: Unconditionally retire all HS circuits if circmgr says so.Gabi Moldovan2024-06-031-12/+1
| | | | | | | If the circmgr retires all of its circuits, so should the HS circ pool. The circuits can be retired for various reasons (for example, if the configured vanguard mode changes).
* tor-circmgr: Make retire_all_circuits unconditional.Gabi Moldovan2024-06-032-2/+0
| | | | Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2168?commit_id=3c67fa55c7c5b0c4f30c1d57e8e67fe541d9c99e#note_3033368
* tor-circmgr: Log the kind of HS circuit stub we are selecting.Gabriela Moldovan2024-06-031-1/+7
|
* arti-client: Add TODO about always clearing the HS circ pool.Gabriela Moldovan2024-06-031-0/+8
|
* tor-circmgr: Remove VanguardMode from Pool (fmt).Gabriela Moldovan2024-06-033-10/+5
|
* tor-circmgr: Remove VanguardMode from Pool.Gabriela Moldovan2024-06-035-39/+27
| | | | | | | | | Storing the VanguardMode in multiple places (in the VanguardMgr *and* the HS circ Pool) is dangerous and can lead to split brain situations where different parts of the code think they are running in different VanguardModes. See #1424
* tor-circmgr: Remove dangerous vanguards_enabled() function.Gabriela Moldovan2024-06-032-9/+9
| | | | | | | `VanguardMgr` should be the source of truth for obtaining the current `VanguardMode`. Closes #1424
* tor-circmgr: Add a test to check that the pool uses the right VanguardMode.Gabriela Moldovan2024-06-031-0/+86
| | | | See arti#1424
* Merge branch 'upgrades-20240531' into 'main'David Goulet2024-06-031-1/+1
|\ | | | | | | | | Upgrade and update packages for upcoming release See merge request tpo/core/arti!2177
| * Upgrade to latest priority-queue.Nick Mathewson2024-05-311-1/+1
| |
* | tor-circmgr: Ensure we don't select an incompatible circuit stub.Gabriela Moldovan2024-06-031-3/+19
| | | | | | | | | | | | | | | | | | | | | | Previously, HS stub circuit selection (with vanguards enabled) was buggy: when selecting a circuit stub from the circ pool, we failed to ensure its last hop was different from the circuit target. So in some cases, arti would attempt to extend a stub circuit of the form G -> L2 [-> L3] -> T to T, which can't work, because a relay won't extend a circuit to itself (or to its predecessor, for that matter). Closes #1417
* | tor-circmgr: Move vanguard circuit validation to a separate function.Gabriela Moldovan2024-06-031-1/+20
| | | | | | | | This will soon grow more complex.
* | tor-circmgr: Return an error if HS circ has an invalid length.Gabriela Moldovan2024-06-031-4/+15
| | | | | | | | | | | | | | | | | | | | | | | | Previously, we'd `debug_assert` that the length of the path is valid. However, `debug_` asserts are compiled out for release builds, which means that if we have some code path that triggers the assertion failure, it will go unnoticed unless our tests happen to exercise it. It's safer to return an internal error, because we definitely don't want to proceed if the path is too short (see arti#1400 and arti#1409). Addresses https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2154#note_3030820
* | tor-guardmgr: Add test for vanguards state file deserialization.Gabriela Moldovan2024-06-034-2/+328
| | | | | | | | This checks that we can read `vanguards.json` state files.
* | tor-config: Apply deferred cargo fmt.Gabriela Moldovan2024-06-032-28/+27
| |
* | tor-config: Cross-reference NotAutoValue in the ExplicitOrAuto docs.Gabriela Moldovan2024-06-031-0/+5
| |
* | tor-config: Fix a test misusing NotAutoValue.Gabriela Moldovan2024-06-031-15/+11
| |
* | tor-config: Add macro for implementing NotAutoValue.Gabriela Moldovan2024-06-032-2/+81
| |
* | tor-config: Re-export serde_value.Gabriela Moldovan2024-06-031-0/+1
| | | | | | | | | | We are about to need this in other crates (for generating the tests for the `NotAutoValue` implementations).
* | tor-config: Add NotAutoValue trait bound to ExplicitOrAuto inner type.Gabriela Moldovan2024-06-032-3/+10
| | | | | | | | | | | | | | This is a safeguard to prevent users from using ExplicitOrAuto with types that serialize to the same value as ExplicitOrAuto::Auto. Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2146#note_3030692
* | tor-guardmgr: Replace From impl with VanguardConfig::mode accessor.Gabriela Moldovan2024-06-033-11/+12
| |
* | tor-config: Add ExplicitOrAuto::{as_value, into_value}.Gabriela Moldovan2024-06-031-0/+30
| |