summaryrefslogtreecommitdiff
path: root/crates/tor-circmgr
Commit message (Collapse)AuthorAgeFilesLines
* tor-circmgr: If necessary, extend the circuit to become STUB+.Gabriela Moldovan2024-05-151-8/+42
| | | | Closes #1400
* tor-circmgr: Add a helper for extending HsCircStubs by one hop.Gabriela Moldovan2024-05-151-2/+15
| | | | | | We're about to use this in `maybe_extend_stub_circuit` too. Part of #1400
* tor-circmgr: Bump patchlevel.Gabriela Moldovan2024-05-151-1/+1
|
* tor-circmgr: Fix path not being extended if lite vanguards are enabled.Gabriela Moldovan2024-05-151-1/+10
|
* tor-circmgr: Assign error-handling closure to variable.Gabriela Moldovan2024-05-151-7/+10
| | | | We will soon need to reuse this.
* tor-circmgr: Rename neighbor_exclusion variables for clarity.Gabriela Moldovan2024-05-151-4/+4
| | | | | | I am about to reuse one of these on the "lite" vanguards branch. I am renaming them to make it easier to see which one of the two I will be using.
* tor-circmgr: After building the HS path, assert the length is correct.Gabriela Moldovan2024-05-151-1/+18
| | | | | | One of these assertions currently fails, because we have a bug in the vanguard path builder: if lite vanguards are enabled, we only build 2-hop circuits instead of 3.
* Bump versions of 0.x tor-* and arti-* cratesIan Jackson2024-04-301-22/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | for p in `cat ../u`; do cargo set-version --locked --offline -p $p; done where u contains tor-basic-utils tor-async-utils 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-circmgr: Don't log unless we are launching some circuits.Gabriela Moldovan2024-04-291-5/+7
| | | | Otherwise we end up logging that we're launching 0 circuits.
* arti-client: Make vanguards non-experimental.Gabriela Moldovan2024-04-291-3/+3
| | | | This makes the vanguards feature non-experimental.
* tor-circmgr: Remove no-longer-relevant TODO.Gabriela Moldovan2024-04-291-1/+1
| | | | The wanted_kind _does_ matter.
* tor-circmgr: The circuit must still be usable, even if vanguards are enabled.Gabriela Moldovan2024-04-291-3/+1
|
* tor-circmgr: Prefer STUB+ where possible.Gabriela Moldovan2024-04-292-10/+61
| | | | Closes #1385
* tor-circmgr: Remove no-longer-needed dead_code allow.Gabriela Moldovan2024-04-291-1/+0
|
* tor-circmgr: Have separate targets for the STUB and STUB+ pools (fmt).Gabriela Moldovan2024-04-291-3/+3
|
* tor-circmgr: Have separate targets for the STUB and STUB+ pools.Gabriela Moldovan2024-04-291-32/+46
| | | | Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2102#note_3024366
* tor-circmgr: Add a TODO about launching HS circuits in parallel.Gabriela Moldovan2024-04-291-0/+1
| | | | Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2102#note_3024370
* tor-circmgr: Expand on the ForLaunch docs.Nick Mathewson2024-04-291-1/+2
|
* tor-circmgr: Remove an addressed TODO.Gabriela Moldovan2024-04-291-13/+0
|
* tor-circmgr: Log the kinds of circuits we're about to launch (fmt).Gabriela Moldovan2024-04-291-4/+1
|
* tor-circmgr: Log the kinds of circuits we're about to launch.Gabriela Moldovan2024-04-292-3/+24
|
* tor-circmgr: Remove no-longer-needed dead code allows.Gabriela Moldovan2024-04-291-2/+0
|
* tor-circmgr: Make a fraction of preemptive HS circuits be STUB+.Gabriela Moldovan2024-04-292-11/+111
| | | | Closes #1353
* tor-guardmgr: Temporarily reintroduce VanguardConfig.Gabriela Moldovan2024-04-291-1/+1
| | | | | | | | | | | | | | As discussed on #tor-dev, I'm reintroducing `VanguardConfig` for now. The `VanguardConfig` specifies what mode (full/lite/disabled) the `VanguardMgr` should run in. We currently don't have a separate modes for HS clients and HS services. We shouldn't actually *need* a `VanguardConfig` at all, so this is just a (hopefully!) short- or medium-term fix until we sort out #1382 (which might involve making breaking changes to our `reconfigure()` APIs). Closes #1272
* tor-circmgr: Loop until we run out of circuits to launch.Gabriela Moldovan2024-04-251-1/+1
| | | | | Previously this would only loop `n_to_launch - 1` times, so the pool was always 1 circuit short of the `n_to_launch` target.
* Use clone_from in CircMgr config updater.Nick Mathewson2024-04-221-1/+3
| | | | | Clippy prefers this idiom as potentially more efficient. It's not critical-path, but let's let clippy have its way.
* tor-guardmgr: Store whether we're running an onion svc (fmt).Gabriela Moldovan2024-04-111-1/+6
|
* tor-guardmgr: Store whether we're running an onion svc.Gabriela Moldovan2024-04-112-2/+10
| | | | | | The `VanguardMgr` needs to know whether arti is running as an onion service or not, in order to figure out which of the `vanguards_enabled` and `vanguards_hs_service` modes to use.
* tor-circmgr: Call VanguardMgr::launch_background_tasks.Gabriela Moldovan2024-04-052-1/+10
|
* tor-guardmgr: Pass an rng to select_vanguard.Gabriela Moldovan2024-04-051-2/+2
| | | | | This function will need to randomly select a vanguard, so it needs an `Rng`.
* tor-guardmgr: Give VanguardMgr a handle to the runtime (fmt).Gabriela Moldovan2024-04-052-3/+14
|
* tor-guardmgr: Give VanguardMgr a handle to the runtime.Gabriela Moldovan2024-04-054-13/+14
|
* tor-circmgr: Remove addressed TODO.Gabriela Moldovan2024-04-051-2/+0
| | | | This was addressed in !2046, but I forgot to remove the TODO.
* Merge branch '504-cleanup-part1' into 'main'Nick Mathewson2024-04-034-30/+26
|\ | | | | | | | | Move fiddly Relay functionality into a RelayDetails type. See merge request tpo/core/arti!2057
| * exitpath: Refactor a test to use tor-relay-usage.Nick Mathewson2024-03-281-20/+14
| |
| * Remove temporary functions in CheckedRelay.Nick Mathewson2024-03-284-12/+14
| |
* | remove unused dependenciestrinity-1686a2024-04-021-3/+1
| | | | | | | | Edited-by: Nick Mathewson <[email protected]>
* | Remove semver.md files from arti-1.2.1 releaseNick Mathewson2024-04-021-3/+0
| |
* | Update unstable `tor/arti-*` crates to 0.17.0.Nick Mathewson2024-04-021-23/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Done with: ``` CRATES=" tor-basic-utils tor-async-utils tor-error tor-config tor-events tor-units tor-geoip tor-rtcompat tor-rtmock tor-log-ratelim tor-rpcbase tor-llcrypto tor-protover tor-bytes tor-hscrypto tor-hspow tor-socksproto tor-checkable tor-cert tor-linkspec tor-cell tor-proto tor-netdoc tor-consdiff tor-netdir tor-relay-selection tor-congestion 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-config arti-hyper arti-bench arti-testing " for crate in $CRATES; do cargo set-version -p "$crate" 0.17.0 done ```
* | Bump patchlevel versions on non-{tor/arti} crates.Nick Mathewson2024-04-021-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These have all had backward-compatible changes. Generated with: ``` cargo set-version --bump patch -p fs-mistrust cargo set-version --bump patch -p test-temp-dir cargo set-version --bump patch -p fslock-guard cargo set-version --bump patch -p hashx cargo set-version --bump patch -p equix cargo set-version --bump patch -p caret cargo set-version --bump patch -p safelog cargo set-version --bump patch -p retry-error ```
* | Run "fixup-features" in preparation for next release.Nick Mathewson2024-03-281-1/+1
|/
* tor-circmgr: Fix a clippy warning.Gabriela Moldovan2024-03-211-2/+2
|
* tor-circmgr: If full vanguards are enabled, apply exclusions to the extra ↵Gabriela Moldovan2024-03-211-7/+7
| | | | hop too (fmt).
* tor-circmgr: If full vanguards are enabled, apply exclusions to the extra ↵Gabriela Moldovan2024-03-211-5/+9
| | | | hop too.
* tor-circmgr: Rewrite RelayExclusion building using exclude_identities().Gabriela Moldovan2024-03-211-19/+7
|
* tor-circmgr: Add function for building a RelayExclusion from a slice of relays.Gabriela Moldovan2024-03-211-0/+14
|
* tor-guardmgr: Make Vanguard::select_relay take a RelayExclusion.Gabriela Moldovan2024-03-211-3/+31
| | | | | | | This enables us to prevent the same relay from being picked in consecutive positions in a path. Part of #1340
* tor-circmgr: Clarify that stub circuits are sometimes 4-hop circuits.Gabriela Moldovan2024-03-201-1/+1
|
* tor-circmgr: Move HsPathBuilder trait impl closer to struct definition.Gabriela Moldovan2024-03-201-35/+35
| | | | This is just code movement to make the code a bit easier to follow.
* tor-circmgr: Add allow(unused) for functions only used on particular feature ↵Gabriela Moldovan2024-03-201-0/+2
| | | | sets.