aboutsummaryrefslogtreecommitdiff
path: root/crates/tor-proto/src/stream/queue.rs
Commit message (Collapse)AuthorAgeFilesLines
* tor-proto: small comment improvementsSteven Engler2026-05-201-1/+1
|
* tor-proto: remove unneeded type aliasSteven Engler2026-05-201-5/+2
|
* tor-proto: always use a bounded mpsc queue for streamsSteven Engler2026-05-201-22/+14
| | | | | | | | | | | | Whether a stream queue should be bounded or unbounded is a decision that needs to be made at runtime depending on the type of flow control used, not at build-time. Window-based flow control should be bounded and XON/XOFF flow control should be unbounded. If we wanted to support both bounded and unbounded queues, it would take a bunch of boilerplate code to wrap the senders and receivers in enums. Instead we make the queue always bounded, but use a large bound for XON/XOFF flow control.
* Fix typosTobias Stoeckmann2026-03-241-1/+1
| | | | Typos found with codespell
* proto: Adjust docs to refer to the new location of StreamReceiverGabriela Moldovan2025-11-241-1/+1
| | | | | | While we still re-export StreamReceiver from the client module, I want to avoid importing it from there in the implementation-agnostic modules, just to make it clearer we're not using client-specific types.
* proto: Move dumb pipes to top-lvl stream moduleGabriela Moldovan2025-10-211-0/+256
|
* proto: Move the `stream` module under `client` (breaking).Gabriela Moldovan2025-08-181-256/+0
| | | | | | | | | | | | The `stream` module is client-specific, for the most part, so I am moving it under `client`. Later on, we will factor out the parts that can be shared with the relay implementation. Note: this is a breaking change as the deleted `stream` module was `pub`. We could've kept the module and reexported from it the public types from `tor_proto::client::stream`, but I think it's better to have this `client` namespacing, because it makes the separation between the client and relay parts clearer.
* Switch Cargo.toml files to edition 2024.Nick Mathewson2025-08-071-1/+1
| | | | | | | | | | | | | | First, run ``` git grep -l "^edition =" | xargs perl -i -pe 's/^edition *=.*/edition = "2024"/;' ``` Second, manually verify that all Cargo.toml files have changed, and nothing else has changed. Third, run cargo fmt again.
* tor-proto: make stream recv queues unbounded if "flowctl-cc" enabledSteven Engler2025-08-051-7/+27
|
* tor-proto: add `DataReaderNew`Steven Engler2025-07-171-2/+0
| | | | This will later become `DataReader`.
* tor-proto: send XOFF messages when the queue grows too largeSteven Engler2025-07-161-2/+0
|
* tor-proto: add dedicated types for the incoming stream queueSteven Engler2025-07-161-0/+240
XON/XOFF flow control will want to know how many data bytes are queued on a stream, so the new types track that.