| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | tor-guardmgr: Add the two VanguardModes to VanguardParams. | Gabriela Moldovan | 2024-04-11 | 1 | -0/+12 | |
| | | | | | | | | | We have two vanguard modes, one for when arti is running as a client, and a separate one for when it's running as a service. Both modes are extracted from the `NetParameters`, so they belong in `VanguardParams`. | |||||
| * | tor-guardmgr: Replace vanguard heap with a simpler approach. | Gabriela Moldovan | 2024-04-10 | 2 | -134/+118 | |
| | | | | | | | | | | | | | | | | | | | As mentioned in https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2075#note_3016306 using a heap isn't the best way to manage the vanguards: * in the default case, which will apply to most users, the L2 and L3 set sizes are 4 and 8 respectively. Using a heap doesn't make sense for such small sets * the use of `Weak<TimeBoundVanguard>`s will be an inconvenience later on, when we implement vanguard set persistence, since `Weak` isn't serializable or deserializable This switches to a simpler apporach, where the `VanguardMgr` computes the soonest expiration timestamp of its `VanguardSet`s by iterating over all the vanguards in each set. Closes #1366 | |||||
| * | tor-guardmgr: Do not store the NetDir in VanguardMgr. | Gabriela Moldovan | 2024-04-10 | 1 | -31/+23 | |
| | | | | | | Instead, we try to get a `NetDir` from the `NetDirProvider` each time we `run_once()`. | |||||
| * | tor-guardmgr: Remove unnecessary call to discard_expired(). | Gabriela Moldovan | 2024-04-10 | 2 | -3/+8 | |
| | | ||||||
| * | tor-guardmgr: Rename vanguards to vanguards heap for clarity. | Gabriela Moldovan | 2024-04-10 | 1 | -12/+12 | |
| | | ||||||
| * | tor-guardmgr: Remove unused params field. | Gabriela Moldovan | 2024-04-10 | 1 | -4/+0 | |
| | | ||||||
| * | tor-guardmgr: Validate lifetimes before constructing VanguarParams. | Gabriela Moldovan | 2024-04-10 | 1 | -4/+35 | |
| | | | | | | If the [min, max] lifetime interval for a vanguard layer is the empty set (i.e. min > max), we return the default lifetime. | |||||
| * | tor-guardmgr: Hold a weak reference to NetDirProvider. | Gabriela Moldovan | 2024-04-10 | 1 | -7/+14 | |
| | | ||||||
| * | tor-guardmgr: Don't recreate the event stream for each iteration (fmt). | Gabriela Moldovan | 2024-04-10 | 1 | -1/+7 | |
| | | ||||||
| * | tor-guardmgr: Don't recreate the event stream for each iteration. | Gabriela Moldovan | 2024-04-10 | 1 | -3/+5 | |
| | | ||||||
| * | tor-guardmgr: Only replenish the L3 sets if full vanguards are in use (fmt). | Gabriela Moldovan | 2024-04-10 | 1 | -8/+2 | |
| | | ||||||
| * | tor-guardmgr: Only replenish the L3 sets if full vanguards are in use. | Gabriela Moldovan | 2024-04-10 | 1 | -33/+54 | |
| | | ||||||
| * | tor-guardmgr: Clarify VanguardMgr::select_vanguard behaviour. | Gabriela Moldovan | 2024-04-09 | 1 | -0/+9 | |
| | | ||||||
| * | tor-guardmgr: Use ids_listed() instead of by_ids() (fmt). | Gabriela Moldovan | 2024-04-09 | 1 | -1/+2 | |
| | | ||||||
| * | tor-guardmgr: Use ids_listed() instead of by_ids(). | Gabriela Moldovan | 2024-04-09 | 1 | -1/+1 | |
| | | ||||||
| * | tor-guardmgr: Update TODO to say we want RelayUsage::vanguard(). | Gabriela Moldovan | 2024-04-09 | 1 | -1/+1 | |
| | | ||||||
| * | tor-guardmgr: Explain why we're making a uniform choice. | Gabriela Moldovan | 2024-04-09 | 1 | -0/+3 | |
| | | ||||||
| * | tor-guardmgr: Add tests for the vanguard manager. | Gabriela Moldovan | 2024-04-05 | 3 | -0/+392 | |
| | | ||||||
| * | tor-guardmgr: Replenish the vanguard sets as needed. | Gabriela Moldovan | 2024-04-05 | 2 | -13/+222 | |
| | | ||||||
| * | tor-guardmgr: Implement From<&VanguardSet> for RelayIdSet. | Gabriela Moldovan | 2024-04-05 | 1 | -1/+20 | |
| | | ||||||
| * | tor-guardmgr: Add a function for selecting vanguard lifetimes. | Gabriela Moldovan | 2024-04-05 | 1 | -0/+28 | |
| | | ||||||
| * | tor-guardmgr: Implement VanguardSet::pick_relay. | Gabriela Moldovan | 2024-04-05 | 2 | -12/+35 | |
| | | | | | Closes #1340 | |||||
| * | tor-guardmgr: Implement vanguard mgr. | Gabriela Moldovan | 2024-04-05 | 1 | -10/+114 | |
| | | ||||||
| * | tor-guardmgr: Make TimeboundVanguard fields pub(super). | Gabriela Moldovan | 2024-04-05 | 1 | -2/+2 | |
| | | ||||||
| * | tor-guardmgr: Add VanguardMgrError::NetDir. | Gabriela Moldovan | 2024-04-05 | 1 | -0/+5 | |
| | | ||||||
| * | tor-guardmgr: Store the TimeboundVanguards in a binary heap. | Gabriela Moldovan | 2024-04-05 | 2 | -5/+47 | |
| | | ||||||
| * | tor-guardmgr: Implement launch_background_tasks. | Gabriela Moldovan | 2024-04-05 | 1 | -4/+35 | |
| | | ||||||
| * | tor-guardmgr: Give VanguardSets a target set size. | Gabriela Moldovan | 2024-04-05 | 2 | -4/+18 | |
| | | | | | | The target is the number of vanguards the `VanguardMgr`s will try to maintain in the `VanguardSet`. | |||||
| * | tor-guardmgr: Derive getters for VanguardParams. | Gabriela Moldovan | 2024-04-05 | 1 | -1/+7 | |
| | | ||||||
| * | tor-guardmgr: Pass an rng to select_vanguard. | Gabriela Moldovan | 2024-04-05 | 2 | -3/+7 | |
| | | | | | | 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 Moldovan | 2024-04-05 | 1 | -1/+5 | |
| | | ||||||
| * | tor-guardmgr: Give VanguardMgr a handle to the runtime. | Gabriela Moldovan | 2024-04-05 | 1 | -9/+8 | |
| | | ||||||
| * | tor-guardmgr: Implement TryFrom<&NetParameters> for VanguardParams. | Gabriela Moldovan | 2024-04-05 | 1 | -3/+18 | |
| | | ||||||
| * | tor-guardmgr: Fix typo in VanguardSet docs. | Gabriela Moldovan | 2024-04-05 | 1 | -1/+1 | |
| | | ||||||
| * | Merge branch '504-cleanup-part1' into 'main' | Nick Mathewson | 2024-04-03 | 2 | -8/+16 | |
| |\ | | | | | | | | | Move fiddly Relay functionality into a RelayDetails type. See merge request tpo/core/arti!2057 | |||||
| | * | Remove all *Relay is_flagged_guard methods. | Nick Mathewson | 2024-03-28 | 1 | -3/+3 | |
| | | | | | | | | | These were only used for testing. | |||||
| | * | Remove temporary functions in CheckedRelay. | Nick Mathewson | 2024-03-28 | 2 | -7/+14 | |
| | | | ||||||
| | * | Remove temporary functions in UncheckedRelay. | Nick Mathewson | 2024-03-28 | 1 | -1/+2 | |
| | | | ||||||
| * | | Remove semver.md files from arti-1.2.1 release | Nick Mathewson | 2024-04-02 | 1 | -1/+0 | |
| | | | ||||||
| * | | Update unstable `tor/arti-*` crates to 0.17.0. | Nick Mathewson | 2024-04-02 | 1 | -19/+19 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 Mathewson | 2024-04-02 | 1 | -1/+1 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 Mathewson | 2024-03-28 | 1 | -1/+1 | |
| |/ | ||||||
| * | tor-guardmgr: Replace From impl with from_net_parameter constructor. | Gabriela Moldovan | 2024-03-26 | 1 | -2/+8 | |
| | | ||||||
| * | tor-guardmgr: Implement From<BoundedInt32> for VanguardMode. | Gabriela Moldovan | 2024-03-26 | 1 | -0/+13 | |
| | | | | | | We'll need this to convert the `vanguard_enabled` and `vanguard_hs_service` net params to a `VanguardMode. | |||||
| * | tor-circmgr: Fix a clippy warning. | Gabriela Moldovan | 2024-03-21 | 2 | -2/+2 | |
| | | ||||||
| * | tor-guardmgr: Explain what neighbor_exclusion is for. | Gabriela Moldovan | 2024-03-21 | 2 | -3/+25 | |
| | | ||||||
| * | tor-guardmgr: Make Vanguard::select_relay take a RelayExclusion. | Gabriela Moldovan | 2024-03-21 | 2 | -2/+9 | |
| | | | | | | | | This enables us to prevent the same relay from being picked in consecutive positions in a path. Part of #1340 | |||||
| * | tor-circmgr: Unconditionally define VanguardMode. | Gabriela Moldovan | 2024-03-20 | 3 | -20/+36 | |
| | | ||||||
| * | tor-guardmgr: Derive getters for Vanguard. | Gabriela Moldovan | 2024-03-20 | 1 | -2/+1 | |
| | | ||||||
| * | tor-guardmgr: Add a function for getting the current VanguardMode. | Gabriela Moldovan | 2024-03-20 | 1 | -0/+5 | |
| | | ||||||
