| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| | * | | | Rename the old IncomingStreamRequestContext to StreamReqInfo. | Nick Mathewson | 2024-03-26 | 3 | -9/+7 | |
| | | | | | | | | | | | | | | | | | (Doing this to prevent us having two structs with the same name.) | |||||
| | * | | | hss: Make the limit for streams configurable. | Nick Mathewson | 2024-03-26 | 5 | -16/+30 | |
| | | | | | | | | | | | | | | | | | Closes #1124. | |||||
| | * | | | Add an IncomingStreamRequestFilter to check early properties | Nick Mathewson | 2024-03-26 | 6 | -17/+167 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Based on designs in #1124. Note that there is a TODO here about a hack I had to do to appease the borrow checker. | |||||
| | * | | | Define a type for a synchronous (blocking) view of a circuit state. | Nick Mathewson | 2024-03-26 | 3 | -0/+40 | |
| | | | | | | | | | | | | | | | | | | | | | We'll use this as an argument for the callback that checks stream requests to make sure they're permitted. | |||||
| | * | | | proto: Make StreamMap keep a count of open streams. | Nick Mathewson | 2024-03-26 | 1 | -0/+34 | |
| | | | | | ||||||
| | * | | | proto: Prevent general state-transitions on StreamEnt | Nick Mathewson | 2024-03-26 | 2 | -38/+60 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | We want to keep an accurate count of the number of open streams, so we have to stop exposing `&mut StreamEnt` outside of the streammap module. | |||||
| | * | | | proto: Refactor circuit::streammap::StreamEnt | Nick Mathewson | 2024-03-26 | 2 | -40/+51 | |
| |/ / / | | | | | | | | | | | | | | | | | | | This is the first part of a refactoring that will let us keep code from the outside of `streammap` from changing a stream from one state to another. And we need to do _that_ so that StreamMap can count how many open streams it has. | |||||
| * | | | Merge branch 'refactor_stream_crypto_init' into 'main' | Nick Mathewson | 2024-03-26 | 5 | -87/+118 | |
| |\ \ \ | |/ / |/| | | | | | | | | Refactor the logic for constructing crypt layers. See merge request tpo/core/arti!2048 | |||||
| | * | | Push HandshakeRole down one level. | Nick Mathewson | 2024-03-26 | 1 | -5/+4 | |
| | | | | ||||||
| | * | | Provide spec links for relay crypto formats. | Nick Mathewson | 2024-03-26 | 1 | -2/+10 | |
| | | | | ||||||
| | * | | Clean up match statement a little. | Nick Mathewson | 2024-03-26 | 1 | -7/+7 | |
| | | | | ||||||
| | * | | We now need circuit::handshake to exist unconditionally. | Nick Mathewson | 2024-03-26 | 2 | -2/+15 | |
| | | | | ||||||
| | * | | Refactor the logic for constructing crypt layers. | Nick Mathewson | 2024-03-26 | 5 | -86/+97 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The key insights here are: - That relay cell format and crypto protocols aren't orthogonal: Once we have GCO, it will require V1. - That we only need the actual functions for layer construction to be generic; we don't need to proliferate generic parameters everywhere. - That the circuit::handshake module already does most of what we want. | |||||
| * | | | Merge branch 'coarse' into 'main' | Ian Jackson | 2024-03-25 | 20 | -35/+397 | |
| |\ \ \ | |_|/ |/| | | | | | | | | tor-rtcompat: Introduce CoarseTimeProvider, a new part of Runtime See merge request tpo/core/arti!2050 | |||||
| | * | | tor-rtmock: Rename coarsetime module to coarse_time | Ian Jackson | 2024-03-25 | 4 | -3/+3 | |
| | | | | | | | | | | | | | | | | Modules with the same name as external crates don't work well with our MSRV. | |||||
| | * | | tor-rtcompat: Rename coarsetime module to coarse_time | Ian Jackson | 2024-03-25 | 3 | -3/+3 | |
| | | | | | | | | | | | | | | | | Modules with the same name as external crates don't work well with our MSRV. | |||||
| | * | | tor-rtcompat: coarsetime: Add a comment about doc status | Ian Jackson | 2024-03-25 | 1 | -0/+4 | |
| | | | | ||||||
| | * | | tor-rtcompat: Make Runtime imply CoarseTimeProvider, etc. (fmt) | Ian Jackson | 2024-03-25 | 1 | -2/+2 | |
| | | | | ||||||
| | * | | tor-rtcompat: Make Runtime imply CoarseTimeProvider, etc. | Ian Jackson | 2024-03-25 | 3 | -0/+11 | |
| | | | | | | | | | | | | | We must also impl CoarseTimeProvider for mocked runtimes. | |||||
| | * | | tor-rtmock: impl CoarseTimeProvider for mocked time providers | Ian Jackson | 2024-03-25 | 4 | -1/+70 | |
| | | | | ||||||
| | * | | tor-rtmock: Implement from_real in terms of from_wallclock | Ian Jackson | 2024-03-25 | 1 | -1/+1 | |
| | | | | | | | | | | | | | This reduces duplication a little. | |||||
| | * | | tor-rtcompat: implement_opaque_runtime impls CoarseTimeProvider | Ian Jackson | 2024-03-25 | 1 | -0/+7 | |
| | | | | | | | | | | | | | Now all our non-mock runtime types impl CoarseTimeProvider. | |||||
| | * | | tor-rtcompat: CompoundRuntime: Add a CoarseTimeProvider, and impl (fmt) | Ian Jackson | 2024-03-25 | 3 | -8/+29 | |
| | | | | ||||||
| | * | | tor-rtcompat: CompoundRuntime: Add a CoarseTimeProvider, and impl | Ian Jackson | 2024-03-25 | 8 | -27/+63 | |
| | | | | | | | | | | | | | | | | | | | In all the uses in-crate, this is just a RealCoarseTimeProvider. Now all the compound runtimes impl CoarseTimeProvider. | |||||
| | * | | tor-rtcompat: Reformat a doc comment for semantic newlines | Ian Jackson | 2024-03-25 | 1 | -3/+3 | |
| | | | | ||||||
| | * | | tor-rtcompat: Provide coarsetime APIs and RealCoarseTimeProvider (fmt) | Ian Jackson | 2024-03-25 | 1 | -3/+2 | |
| | | | | ||||||
| | * | | tor-rtcompat: Provide coarsetime APIs and RealCoarseTimeProvider | Ian Jackson | 2024-03-25 | 7 | -0/+215 | |
| |/ / | ||||||
| * | | Merge branch 'vanguards-relay-restrictions' into 'main' | gabi-250 | 2024-03-21 | 3 | -41/+104 | |
| |\ \ | | | | | | | | | | | | | tor-guardmgr: Make Vanguard::select_relay take a RelayExclusion. See merge request tpo/core/arti!2049 | |||||
| | * | | tor-circmgr: Fix a clippy warning. | Gabriela Moldovan | 2024-03-21 | 3 | -4/+4 | |
| | | | | ||||||
| | * | | tor-guardmgr: Explain what neighbor_exclusion is for. | Gabriela Moldovan | 2024-03-21 | 2 | -3/+25 | |
| | | | | ||||||
| | * | | tor-circmgr: If full vanguards are enabled, apply exclusions to the extra ↵ | Gabriela Moldovan | 2024-03-21 | 1 | -7/+7 | |
| | | | | | | | | | | | | | hop too (fmt). | |||||
| | * | | tor-circmgr: If full vanguards are enabled, apply exclusions to the extra ↵ | Gabriela Moldovan | 2024-03-21 | 1 | -5/+9 | |
| | | | | | | | | | | | | | hop too. | |||||
| | * | | tor-circmgr: Rewrite RelayExclusion building using exclude_identities(). | Gabriela Moldovan | 2024-03-21 | 1 | -19/+7 | |
| | | | | ||||||
| | * | | tor-circmgr: Add function for building a RelayExclusion from a slice of relays. | Gabriela Moldovan | 2024-03-21 | 1 | -0/+14 | |
| | | | | ||||||
| | * | | tor-guardmgr: Make Vanguard::select_relay take a RelayExclusion. | Gabriela Moldovan | 2024-03-21 | 3 | -5/+40 | |
| | | | | | | | | | | | | | | | | | | | | | | 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 Moldovan | 2024-03-20 | 1 | -1/+1 | |
| | | | | ||||||
| | * | | tor-circmgr: Move HsPathBuilder trait impl closer to struct definition. | Gabriela Moldovan | 2024-03-20 | 1 | -35/+35 | |
| |/ / | | | | | | | This is just code movement to make the code a bit easier to follow. | |||||
| * | | Merge branch 'vanguard-api-changes' into 'main' | gabi-250 | 2024-03-20 | 15 | -179/+616 | |
| |\ \ | |/ |/| | | | | | | | | | tor-circmgr: Implement vanguard path selection in HsPathBuilder. Closes #1276, #1274, and #1279 See merge request tpo/core/arti!2046 | |||||
| | * | tor-circmgr: Add allow(unused) for functions only used on particular feature ↵ | Gabriela Moldovan | 2024-03-20 | 1 | -0/+2 | |
| | | | | | | | | | sets. | |||||
| | * | tor-circmgr: Move ExitPathBuilder::from_chosen_exit under the test mod. | Gabriela Moldovan | 2024-03-20 | 1 | -10/+13 | |
| | | | | | | | | | | | `ExitPathBuilder` is now `pub(crate)`, so we need to move this under the `test` module to fix the "unused" clippy warning. | |||||
| | * | tor-circmgr: Make the path module crate-private. | Gabriela Moldovan | 2024-03-20 | 5 | -16/+24 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We're not currently using any of the path builders outside of `tor-circmgr`, so let's make them crate-private for now. Care must be taken if/when we decide to make them public again. For instance, the `HsPathBuilder` exposes two path building functions, one that uses vanguards, and one that doesn't. We want to strongly encourage the use of the vanguards-aware version of the function whenever the `vanguards` feature is enabled, without breaking any of its existing non-vanguard uses. Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/2046#note_3010217 | |||||
| | * | tor-circmgr: Reference #1339 in a TODO. | Gabriela Moldovan | 2024-03-20 | 1 | -0/+2 | |
| | | | ||||||
| | * | tor-circmgr: Cross-reference the hspath docs in the HsCircStubKind docs. | Gabriela Moldovan | 2024-03-20 | 1 | -1/+3 | |
| | | | ||||||
| | * | tor-circmgr: Move HsPathBuilder docs to the module-level. | Gabriela Moldovan | 2024-03-20 | 1 | -39/+41 | |
| | | | ||||||
| | * | tor-circmgr: Remove unnecessary Result wrapping. | Gabriela Moldovan | 2024-03-20 | 2 | -10/+9 | |
| | | | ||||||
| | * | tor-circmgr: Unconditionally define VanguardMode. | Gabriela Moldovan | 2024-03-20 | 5 | -36/+43 | |
| | | | ||||||
| | * | tor-circmgr: Apply deferred cargo fmt. | Gabriela Moldovan | 2024-03-20 | 1 | -9/+2 | |
| | | | ||||||
| | * | tor-circmgr: Rename pick_path to pick_path_with_vanguards. | Gabriela Moldovan | 2024-03-20 | 2 | -5/+5 | |
| | | | | | | | | | | | | | When the `vanguards` feature is enabled, we define `pick_path_with_vanguards` instead of `pick_path`, rather than conditionally defining 2 different versions of the same function. | |||||
| | * | tor-circmgr: Add an explanation and a couple of TODOs. | Gabriela Moldovan | 2024-03-20 | 1 | -0/+8 | |
| | | | ||||||
| | * | tor-circmgr: Clarify the TODO in launch_hs_circuits_as_needed. | Gabriela Moldovan | 2024-03-20 | 1 | -2/+12 | |
| | | | ||||||
