<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-proto/src/util.rs, branch arti-v2.1.0</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v2.1.0</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v2.1.0'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2026-02-12T16:35:14Z</updated>
<entry>
<title>Revert "proto: Add a new ToRelayMsg util"</title>
<updated>2026-02-12T16:35:14Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-02-11T14:02:06Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=ac562cbef392108c1a9a723f4fb336a6831eb809'/>
<id>urn:sha1:ac562cbef392108c1a9a723f4fb336a6831eb809</id>
<content type='text'>
This reverts commit 04ab3cd848d7977baf58dd64ebfcad6aa54ecb17.

Reverted because we no longer need to "peek" into the opaque
`CircChanMsg` of a circuit reactor: now the implementation-dependent
part of the reactor is in charge of handling the channel messages,
and extracting `Relay` objects out of RELAY/RELAY_EARLY cells,
which then get processed in the base reactor.
</content>
</entry>
<entry>
<title>proto: Add a new ToRelayMsg util</title>
<updated>2026-01-29T16:33:21Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-01-20T18:34:12Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=04ab3cd848d7977baf58dd64ebfcad6aa54ecb17'/>
<id>urn:sha1:04ab3cd848d7977baf58dd64ebfcad6aa54ecb17</id>
<content type='text'>
This will be used in a future commit, inside the new generic circuit
reactor.

We need it because RELAY cells are handled very similarly, so we need
some way of finding out if a given generic chancell is actually a RELAY
cell that we can handle in an implementation-agnostic way.
</content>
</entry>
<entry>
<title>proto: Move TimeoutEstimator to util</title>
<updated>2026-01-29T16:33:21Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-01-12T10:44:05Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=5c5bf40652f00fff3205fc5a2ff44ad48e96b8de'/>
<id>urn:sha1:5c5bf40652f00fff3205fc5a2ff44ad48e96b8de</id>
<content type='text'>
This will be used in the stream reactor too (and the stream reactor will
eventually replace the corresponding client impl).
</content>
</entry>
<entry>
<title>tor-proto: Track information on when tunnels were last used</title>
<updated>2025-11-12T15:00:55Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-10-29T17:39:56Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=82bee9cb79db4ca7b7c5ecaac68b6f5e1b398fa1'/>
<id>urn:sha1:82bee9cb79db4ca7b7c5ecaac68b6f5e1b398fa1</id>
<content type='text'>
This is part of an implementation for proposal 368.
</content>
</entry>
<entry>
<title>proto: Add PollAll helper for driving futures in lockstep.</title>
<updated>2025-09-25T13:37:41Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2025-09-18T16:58:14Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=563e8965f9df29735b010eac9a7588fbf0941789'/>
<id>urn:sha1:563e8965f9df29735b010eac9a7588fbf0941789</id>
<content type='text'>
</content>
</entry>
<entry>
<title>proto: Use the CBT to compute half-stream timeouts.</title>
<updated>2025-09-16T16:43:04Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2025-09-16T13:58:58Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=63c833d679aefc13bf4f64703fc56c639f5b6ad3'/>
<id>urn:sha1:63c833d679aefc13bf4f64703fc56c639f5b6ad3</id>
<content type='text'>
</content>
</entry>
<entry>
<title>proto: Define a new composable SinkBlocker type.</title>
<updated>2025-09-04T15:59:39Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-09-03T17:44:27Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=539e3761c5f09c9cbc3f4891ab4a4314d1a5a952'/>
<id>urn:sha1:539e3761c5f09c9cbc3f4891ab4a4314d1a5a952</id>
<content type='text'>
This type wraps a futures::Sink, and allows it to be temporarily blocked
and unblocked.

I'm going to use this to implement padding-based circuit blocking,
according to the designs in !3225.
</content>
</entry>
<entry>
<title>tor-proto: add `Notify{Sender,Receiver}` channel</title>
<updated>2025-06-23T20:36:57Z</updated>
<author>
<name>Steven Engler</name>
<email>opara@torproject.org</email>
</author>
<published>2025-06-23T20:34:15Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=a3eb63512c7efd373b513aa2eabae6a2ec0ad0bf'/>
<id>urn:sha1:a3eb63512c7efd373b513aa2eabae6a2ec0ad0bf</id>
<content type='text'>
An async notification channel.

This uses `postage::watch::{Sender,Receiver}` internally.
</content>
</entry>
<entry>
<title>tor-proto: add a `TokenBucket`</title>
<updated>2025-06-05T15:14:50Z</updated>
<author>
<name>Steven Engler</name>
<email>opara@torproject.org</email>
</author>
<published>2025-05-27T03:04:50Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=80834f9c356e883651f6ef98fddea7bace0c9e72'/>
<id>urn:sha1:80834f9c356e883651f6ef98fddea7bace0c9e72</id>
<content type='text'>
</content>
</entry>
<entry>
<title>tor-proto: add 'oneshot_broadcast' util module</title>
<updated>2024-12-10T19:15:16Z</updated>
<author>
<name>Steven Engler</name>
<email>opara@torproject.org</email>
</author>
<published>2024-11-26T01:50:07Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=2fb804296217a2948e61611d80baed120385f2bc'/>
<id>urn:sha1:2fb804296217a2948e61611d80baed120385f2bc</id>
<content type='text'>
</content>
</entry>
</feed>
