<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-proto/src/circuit, branch arti-v2.5.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.5.0</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v2.5.0'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2026-06-29T13:52:57Z</updated>
<entry>
<title>proto: Add expect(unused) where needed</title>
<updated>2026-06-29T13:52:57Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-06-23T18:00:55Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=4f4130c34ffb89ff4c75c143d1612d2ced60e9d6'/>
<id>urn:sha1:4f4130c34ffb89ff4c75c143d1612d2ced60e9d6</id>
<content type='text'>
Now that relays no longer use `CtrlCmd::AwaitStreamRequests`, some of
these fields are unused. I'm leaving them in for now, but we should
remove them if they're still unused after we finish the circ reactor
impl.

I'm not removing `AwaitStreamRequests`, because it will be needed by
onion services, when we replace the old client circuit reactor with the
new one.
</content>
</entry>
<entry>
<title>proto: Support passing a stream request filter to the reactor</title>
<updated>2026-06-29T13:50:49Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-06-12T10:03:02Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=60306abe64f00e5053c2728e4c884a6e3ff714b4'/>
<id>urn:sha1:60306abe64f00e5053c2728e4c884a6e3ff714b4</id>
<content type='text'>
Relay circuits always need a filter, so it's best to set it via the
constructor.

Part of #2582

Closes #2577
</content>
</entry>
<entry>
<title>tor-proto: pass correct chan msg cmd to `decrypt_outbound()`</title>
<updated>2026-06-24T17:09:18Z</updated>
<author>
<name>Steven Engler</name>
<email>opara@torproject.org</email>
</author>
<published>2026-06-24T15:16:49Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=9f335acf7b0426fba583a68ab4b15d25cc6d9531'/>
<id>urn:sha1:9f335acf7b0426fba583a68ab4b15d25cc6d9531</id>
<content type='text'>
Instead of converting the `RelayEarly` message to a `Relay` message, we
add a new `RelayMaybeEarlyChanMsg` restricted message set that can hold
either.

Previously we were passing the wrong channel message command to
`decrypt_outbound()`, which would cause the decryption to fail for relay
crypto algorithms that use the command.
</content>
</entry>
<entry>
<title>proto: Rename LocalApplicationStream for clarity</title>
<updated>2026-06-23T15:58:29Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-06-23T15:47:44Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=d5815e8b4834d76b6831e0451322a6d55c3e3e66'/>
<id>urn:sha1:d5815e8b4834d76b6831e0451322a6d55c3e3e66</id>
<content type='text'>
See
https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/4139#note_3429586
</content>
</entry>
<entry>
<title>proto: Rework error handling in `HopMgr::get_or_spawn_reactor()`</title>
<updated>2026-06-23T15:58:29Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-06-22T17:14:39Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=d6d24bc58609d0cf6c011d70b4906ad4dc7ca2fa'/>
<id>urn:sha1:d6d24bc58609d0cf6c011d70b4906ad4dc7ca2fa</id>
<content type='text'>
This reworks `get_or_spawn_reactor()` to return `Error` instead of
`ReactorError`.

The main change here is that we now have a dedicated `Error::Spawn`
variant for `SpawnError`s, instead of mapping these to `ReactorError`
(which actually triggers a clean shutdown, which is not quite what we
want here).
</content>
</entry>
<entry>
<title>proto: Simplify StreamEvent::LocalStreamClosed (fmt)</title>
<updated>2026-06-23T15:58:29Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-06-22T16:29:43Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=878a93d292fa4dcdeb3c8e781f563ff2fa00949e'/>
<id>urn:sha1:878a93d292fa4dcdeb3c8e781f563ff2fa00949e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>proto: Simplify StreamEvent::LocalStreamClosed</title>
<updated>2026-06-23T15:58:29Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-06-22T16:28:43Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=e6df68625731c3798e027afd8f6f19c17520f1d1'/>
<id>urn:sha1:e6df68625731c3798e027afd8f6f19c17520f1d1</id>
<content type='text'>
This doesn't need to contain the `CloseStreamBehavior` or
`TerminateReason`, because we always use the same ones.
</content>
</entry>
<entry>
<title>proto: Rename StreamEvent::Closed to LocalStreamClosed</title>
<updated>2026-06-23T15:58:29Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-06-22T16:25:16Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=eb5507f8829b016bc99d7bb326540aac9f3b0cca'/>
<id>urn:sha1:eb5507f8829b016bc99d7bb326540aac9f3b0cca</id>
<content type='text'>
I realized the previous naming was ambiguous. Hopefully this makes it
clear that this `StreamEvent` triggers when the MPSC channel connecting
the reactor to the local application stream (for example the local TCP
connection of the stream, in the case of exit streams) is dropped.
</content>
</entry>
<entry>
<title>proto: Implement ClosePendingStream in the stream reactor</title>
<updated>2026-06-23T15:58:29Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-06-22T10:29:59Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=205e03d38ea538522a5acf0fba8020199a818c6a'/>
<id>urn:sha1:205e03d38ea538522a5acf0fba8020199a818c6a</id>
<content type='text'>
Closes #2590
</content>
</entry>
<entry>
<title>proto: Add a helper function for handling closed streams (fmt)</title>
<updated>2026-06-23T15:58:29Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-06-22T15:51:14Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=c41555a976937d40e7f14720384bb43331e8a02e'/>
<id>urn:sha1:c41555a976937d40e7f14720384bb43331e8a02e</id>
<content type='text'>
</content>
</entry>
</feed>
