| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| | * | | | tor-proto: Move some functions from PaddingController to PaddingShared | Nick Mathewson | 2025-09-09 | 1 | -30/+35 | |
| | | | | | | | | | | | | | | | | | This will help avoid needing to acquire the lock more than once. | |||||
| | * | | | proto: Allow DROP command when padding is enabled. | Nick Mathewson | 2025-09-09 | 1 | -0/+10 | |
| | | | | | ||||||
| | * | | | proto: Make decrypted_padding fallible. | Nick Mathewson | 2025-09-09 | 3 | -7/+15 | |
| | | | | | | | | | | | | | | | | | This will let us reject excessive padding. | |||||
| * | | | | Merge branch 'padding_congestion_signal' into 'main' | Nick Mathewson | 2025-09-15 | 3 | -19/+36 | |
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | proto: Base congestion signal on the channel. See merge request tpo/core/arti!3242 | |||||
| | * | | | | proto: Move congestion_signals into CircCellSender. | Nick Mathewson | 2025-09-09 | 3 | -35/+22 | |
| | | | | | | ||||||
| | * | | | | proto: Base congestion signal on the channel. | Nick Mathewson | 2025-09-09 | 2 | -5/+35 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We're doing this rather than having it look at CircuitCellSender under the theory that we want to infer our throughput independently from padding-based decisions of whether to block. | |||||
| * | | | | | Merge branch 'correct_replace_behavior' into 'main' | Nick Mathewson | 2025-09-15 | 5 | -33/+58 | |
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | Circuit padding: fix a couple of issues with the "replace" flag. See merge request tpo/core/arti!3246 | |||||
| | * | | | | | Apply 1 suggestion(s) to 1 file(s) | Nick Mathewson | 2025-09-15 | 1 | -1/+1 | |
| | | | | | | | | | | | | | | | | | | | Co-authored-by: gabi-250 <[email protected]> | |||||
| | * | | | | | proto: Only replace padding when the target will see it. | Nick Mathewson | 2025-09-10 | 4 | -6/+29 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously we would replace padding with any cell that was already in the queue. But that doesn't make sense: If we have a cell queued for hop 1, then we shouldn't use it as padding for hop 2, since hop 2 will never see it! Instead, we look at the target hops for the already queued cells. Ref: - https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3225/diffs?commit_id=3998e0559fbcc06f8ea88968051cebca71489a52 | |||||
| | * | | | | | proto: derive Ord for HopNum. | Nick Mathewson | 2025-09-10 | 1 | -1/+1 | |
| | | | | | | | ||||||
| | * | | | | | proto: Emit the correct events on replacing padding | Nick Mathewson | 2025-09-10 | 2 | -27/+29 | |
| | |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we replace padding with an _already queued_ cell, we should only trigger PaddingSent on the final hop's machine. Refs: - https://github.com/maybenot-io/maybenot/commit/35ba39d629d1e64a1346586112837e5015c47242#r164166126 - https://github.com/maybenot-io/maybenot/pull/35/commits/715455b8dcd95a32eafe261ab500cfed9415b7f3 - https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3225/diffs?commit_id=79a3305dc226f9f1136cad034e1a36413d6595f5 | |||||
| * | | | | | Merge branch 'maybenot-bypass-simplification' into 'main' | gabi-250 | 2025-09-15 | 1 | -15/+32 | |
| |\ \ \ \ \ | |_|_|_|/ |/| | | | | | | | | | | | | | | proto: Simplify/correct padding-based blocking logic. See merge request tpo/core/arti!3252 | |||||
| | * | | | | proto: Simplify/correct padding-based blocking logic. | Nick Mathewson | 2025-09-11 | 1 | -15/+32 | |
| | | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | The correction: We want to report a block as bypassable only if _every_ currently blocking hop has bypassable blocking. The simplification: We don't need to report the first hop that's blocking any more. | |||||
| * / | | | tor-proto: fix path of `semver.md` | Steven Engler | 2025-09-11 | 1 | -0/+0 | |
| |/ / / | | | | | | | | | | | | | `Release.md` gives a wildcard path of `crates/*/semver.md`, so it seems that these files should go in the top level of each crate. | |||||
| * | | | tor-proto: add some missing doc comments | Steven Engler | 2025-09-10 | 5 | -1/+17 | |
| | | | | ||||||
| * | | | tor-proto: put some code behind the "flowctl-cc" feature | Steven Engler | 2025-09-10 | 2 | -0/+2 | |
| | | | | ||||||
| * | | | tor-proto: rename `StreamFlowCtrl` constructors | Steven Engler | 2025-09-10 | 4 | -8/+8 | |
| | | | | ||||||
| * | | | tor-proto: simplify `StreamFlowCtrlEnum` with `enum_dispatch` | Steven Engler | 2025-09-10 | 6 | -92/+68 | |
| | | | | ||||||
| * | | | tor-proto: rename `StreamFlowControl` to `StreamFlowCtrl` | Steven Engler | 2025-09-10 | 6 | -36/+36 | |
| | | | | ||||||
| * | | | tor-proto: rename `StreamFlowControlEnum` to `StreamFlowCtrlEnum` | Steven Engler | 2025-09-10 | 1 | -18/+18 | |
| | | | | ||||||
| * | | | tor-proto: remove some unneeded `pub(crate)` | Steven Engler | 2025-09-10 | 2 | -8/+5 | |
| | | | | ||||||
| * | | | tor-proto: move xon/xoff flow ctrl logic to `XonXoffFlowCtrl` | Steven Engler | 2025-09-10 | 2 | -143/+171 | |
| | | | | ||||||
| * | | | tor-proto: move window flow ctrl logic to `WindowFlowCtrl` | Steven Engler | 2025-09-10 | 2 | -36/+70 | |
| | | | | ||||||
| * | | | tor-proto: move flow control state constructors | Steven Engler | 2025-09-10 | 3 | -7/+27 | |
| | | | | ||||||
| * | | | tor-proto: renamed `XonXoffControl` to `XonXoffFlowCtrl` | Steven Engler | 2025-09-10 | 2 | -4/+4 | |
| | | | | | | | | | | | | | For consistency with `WindowFlowControl`. | |||||
| * | | | tor-proto: moved `XonXoffControl` and `LastSentXonXoff` | Steven Engler | 2025-09-10 | 3 | -25/+36 | |
| | | | | ||||||
| * | | | tor-proto: added a `WindowFlowCtrl` state type | Steven Engler | 2025-09-10 | 4 | -5/+15 | |
| | | | | ||||||
| * | | | tor-proto: move `DrainRateRequest` | Steven Engler | 2025-09-10 | 6 | -12/+15 | |
| | | | | ||||||
| * | | | tor-proto: remove a `pub(crate) use` from `client::stream` | Steven Engler | 2025-09-10 | 10 | -14/+20 | |
| | | | | | | | | | | | | | | | | For internal types, I think it becomes too much of a mess to export everything through a single module. | |||||
| * | | | tor-proto: reorganize some flow control modules | Steven Engler | 2025-09-10 | 7 | -6/+10 | |
| |/ / | | | | | | | This is all private (or pub(crate)) code. | |||||
| * | | Merge branch 'msrv-1.85.1' into 'main' | Nick Mathewson | 2025-09-09 | 1 | -1/+1 | |
| |\ \ | |/ |/| | | | | | | | | | Bump MSRV from 1.85 to 1.85.1 Closes #2107 See merge request tpo/core/arti!3240 | |||||
| | * | Bump MSRV from 1.85 to 1.85.1 | Nick Mathewson | 2025-09-09 | 1 | -1/+1 | |
| | | | | | | | | | Closes #2107 | |||||
| * | | Require maybenot 2.2.1 for MSRV fix. | Nick Mathewson | 2025-09-09 | 1 | -1/+1 | |
| | | | ||||||
| * | | Two grammar/typo fixes from @gabi-250 | Nick Mathewson | 2025-09-09 | 2 | -2/+2 | |
| | | | ||||||
| * | | proto: Make PaddingEvent uninhabited when padding is disabled. | Nick Mathewson | 2025-09-09 | 4 | -22/+29 | |
| | | | ||||||
| * | | proto: correctly use the QueuedCellPaddingInfo for padding. | Nick Mathewson | 2025-09-09 | 1 | -8/+15 | |
| | | | ||||||
| * | | proto: Implement run_padding_action. | Nick Mathewson | 2025-09-09 | 4 | -8/+194 | |
| | | | ||||||
| * | | CircuitCellSender: add methods to implement blocking. | Nick Mathewson | 2025-09-09 | 1 | -0/+41 | |
| | | | ||||||
| * | | proto: add SometimesUnboundedSink::as_inner_mut. | Nick Mathewson | 2025-09-09 | 1 | -0/+11 | |
| | | | | | | | | | Include suitable dire warnings about actually using it. | |||||
| * | | proto: Watch for PaddingEvents in tunnel reactor. | Nick Mathewson | 2025-09-09 | 3 | -5/+81 | |
| | | | | | | | | | | | | | | | Here we give every Circuit in a conflux set its own PaddingEventStream, and poll it as appropriate. We don't yet actually implement the "take an action" code. | |||||
| * | | proto: Make PaddingEventStream implement FusedStream. | Nick Mathewson | 2025-09-08 | 2 | -0/+16 | |
| | | | ||||||
| * | | proto: Make CircuitCellSender type conditional depending on circpadding. | Nick Mathewson | 2025-09-08 | 1 | -13/+116 | |
| | | | ||||||
| * | | Wrap a Circuit's outbound cell queue as its own type. | Nick Mathewson | 2025-09-08 | 2 | -6/+109 | |
| | | | | | | | | | This will make it easier to refactor this as needed. | |||||
| * | | SinkBlocker: Add a comment in poll_flush | Nick Mathewson | 2025-09-08 | 1 | -0/+2 | |
| | | | ||||||
| * | | SometimesUnboundedSink: clarifying documentation. | Nick Mathewson | 2025-09-08 | 1 | -0/+7 | |
| | | | | | | | | | | | Explain how exactly its "you-must-poll-me" behavior relates to the rest of the Sink ecosystem. | |||||
| * | | proto: Make CountingPolicy constructors pub(crate). | Nick Mathewson | 2025-09-08 | 1 | -3/+3 | |
| | | | ||||||
| * | | Require maybenot 2.2.0 for padding | Nick Mathewson | 2025-09-08 | 2 | -3/+2 | |
| |/ | | | | | It cleans up and changes a few things. Changelog at https://github.com/maybenot-io/maybenot/blob/main/crates/maybenot/CHANGELOG.md | |||||
| * | Merge branch 'conflux-refactor' into 'main' | gabi-250 | 2025-09-04 | 8 | -728/+739 | |
| |\ | | | | | | | | | proto: Move implementation-agnostic conflux parts to a new module See merge request tpo/core/arti!3229 | |||||
| | * | proto: Fix ConfluxStatus docs post-refactoring. | Gabriela Moldovan | 2025-09-04 | 1 | -1/+1 | |
| | | | ||||||
| | * | proto: Apply deferred fmt. | Gabriela Moldovan | 2025-09-04 | 1 | -1/+1 | |
| | | | ||||||
