| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| | * | | | counted_map: Add some notes about correctness; downgrade unsafes | Nick Mathewson | 2024-04-02 | 2 | -13/+21 | |
| | | | | | | | | | | | | | | | | | | | | | (We're letting the "unchecked" suffix of this function be enough to indicate that it's risky to use.) | |||||
| | * | | | streammap: Use an internal counted_hashmap to simplify invariant checking | Nick Mathewson | 2024-03-28 | 2 | -43/+566 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of making `streammap.rs` responsible for keeping track of a count field, this lowers that functionality into a lower-level CountedHashMap type. Said type has a little more functionality than we need, to sketch out how we'd want to develop it moving forward if we find that it's useful elsewhere. Closes #1344. | |||||
| * | | | | Merge branch 'vanguard-mgr-refactor' into 'main' | gabi-250 | 2024-04-10 | 2 | -134/+118 | |
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | tor-guardmgr: Replace vanguard heap with a simpler approach. Closes #1366 See merge request tpo/core/arti!2082 | |||||
| | * | | | | 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 | |||||
| * | | | | Merge branch 'vanguard-mgr-sets' into 'main' | gabi-250 | 2024-04-10 | 14 | -71/+1100 | |
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | tor-guardmgr: Make lite vanguards work Closes #1275 and #1340 See merge request tpo/core/arti!2075 | |||||
| | * | | | | 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-netdir: Increase channel size to so set_netidr_and_notify doesn't block. | Gabriela Moldovan | 2024-04-09 | 1 | -1/+1 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | `TestNetDirProvider::set_netidr_and_notify` blocks if the channel is full, so let's give it a non-zero size. | |||||
| | * | | | | 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 | 4 | -0/+393 | |
| | | | | | | ||||||
| | * | | | | tor-netdir: Implement TestNetDirProvider::events(). | Gabriela Moldovan | 2024-04-05 | 3 | -9/+55 | |
| | | | | | | ||||||
| | * | | | | CI: Enable vanguards in the shadow tests. | Gabriela Moldovan | 2024-04-05 | 1 | -1/+1 | |
| | | | | | | ||||||
| | * | | | | arti: Enable arti-client/vanguards if vanguards are enabled. | Gabriela Moldovan | 2024-04-05 | 1 | -0/+1 | |
| | | | | | | | | | | | | | | | | | | | | | Without this we can't enable vanguards in the shadow tests. | |||||
| | * | | | | 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-circmgr: Call VanguardMgr::launch_background_tasks. | Gabriela Moldovan | 2024-04-05 | 2 | -1/+10 | |
| | | | | | | ||||||
| | * | | | | 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 | 3 | -5/+9 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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 | 3 | -4/+19 | |
| | | | | | | ||||||
| | * | | | | tor-guardmgr: Give VanguardMgr a handle to the runtime. | Gabriela Moldovan | 2024-04-05 | 5 | -22/+22 | |
| | | | | | | ||||||
| | * | | | | 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 | |
| | | | | | | ||||||
| | * | | | | tor-circmgr: Remove addressed TODO. | Gabriela Moldovan | 2024-04-05 | 1 | -2/+0 | |
| | | |/ / | |/| | | | | | | | | | | This was addressed in !2046, but I forgot to remove the TODO. | |||||
| * | | | | Merge branch 'ids_listed_note' into 'main' | gabi-250 | 2024-04-10 | 1 | -10/+16 | |
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Tweak documentation on some NetDir lookup functions Closes #1365 See merge request tpo/core/arti!2081 | |||||
| | * | | | | Doc: tweak documentation on NetDir::id*listed functions | Nick Mathewson | 2024-04-10 | 1 | -10/+9 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | Previously they were a bit confusing, and the public function explained its behavior in terms of the private one. | |||||
| | * | | | | Doc: Add xref from NetDir::by_ids to ids_listed. | Nick Mathewson | 2024-04-10 | 1 | -0/+7 | |
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | Explain that `by_ids` isn't what you want if you need to know whether a relay _definitely_ doesn't exist. Closes #1365 | |||||
| * | | | | Merge branch 'relay-sketch' into 'main' | gabi-250 | 2024-04-10 | 1 | -0/+174 | |
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | Sketch out first stages of work on relay support. See merge request tpo/core/arti!2067 | |||||
| | * | | | | Sketch out first stages of work on relay support. | Nick Mathewson | 2024-04-02 | 1 | -0/+174 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | @ahf asked me to try to outline what we should do in order to start out here, so I'm putting this in. It should cover us for a few months. This is by no means final; I'm just looking for initial comment. | |||||
| * | | | | | Merge branch 'ephemeral-keystore' into 'main' | gabi-250 | 2024-04-10 | 5 | -4/+324 | |
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | tor-keymgr: added initial implementation for in-memory ArtiEphemeralKeystore Closes #1358 See merge request tpo/core/arti!2076 | |||||
| | * | | | | | tor-keymgr: added initial implementation for in-memory ArtiEphemeralKeystore | Richard Pospesel | 2024-04-10 | 5 | -4/+324 | |
| |/ / / / / | ||||||
