<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-proto/src/circuit/reactor, 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-16T15:24:51Z</updated>
<entry>
<title>proto: Rename CircSyncView to CircHopSyncView (fmt)</title>
<updated>2026-02-16T15:24:51Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-02-12T19:22:55Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=4a1bb2bda7fe2116ebdcf1a9df4e33bfc78ae054'/>
<id>urn:sha1:4a1bb2bda7fe2116ebdcf1a9df4e33bfc78ae054</id>
<content type='text'>
</content>
</entry>
<entry>
<title>proto: Rename CircSyncView to CircHopSyncView</title>
<updated>2026-02-16T15:24:51Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-02-12T19:10:58Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=a6b28b785a2d26e7b89c32ad1f957813d707d90b'/>
<id>urn:sha1:a6b28b785a2d26e7b89c32ad1f957813d707d90b</id>
<content type='text'>
And update the docs
</content>
</entry>
<entry>
<title>proto: Use CircSyncView in the new circuit reactor</title>
<updated>2026-02-16T15:24:51Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-02-12T18:11:20Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=5d3b887f4b75b0e74530f1961e54f6ef06897bd9'/>
<id>urn:sha1:5d3b887f4b75b0e74530f1961e54f6ef06897bd9</id>
<content type='text'>
Now that CircSyncView no longer needs to know the total number of
streams, we can use it in the new per-hop stream reactor design.
</content>
</entry>
<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: Move decode_relay_cell() out of ForwardHandler</title>
<updated>2026-02-12T16:35:14Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-02-11T18:03:20Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=338c3805a93e2e7178e1e501f45756c89facb0a3'/>
<id>urn:sha1:338c3805a93e2e7178e1e501f45756c89facb0a3</id>
<content type='text'>
This doesn't need to be part of the `ForwardHandler` trait anymore,
because the base reactor no longer calls it directly (instead
implementations are supposed to handle it internally).

No functional changes here, just code motion.
</content>
</entry>
<entry>
<title>proto: Forbid EXTEND2 from RELAY cells</title>
<updated>2026-02-12T16:35:14Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-02-11T18:33:29Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=f89a01966f5e25a4cd871f62476f164959910ffe'/>
<id>urn:sha1:f89a01966f5e25a4cd871f62476f164959910ffe</id>
<content type='text'>
Closes #2339
</content>
</entry>
<entry>
<title>proto: Pass the early flag to handle_relay_msg() (fmt)</title>
<updated>2026-02-12T16:35:14Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-02-11T18:20:19Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=f091e13d7f1192d7bd9a53e39fb6aa799fea79ae'/>
<id>urn:sha1:f091e13d7f1192d7bd9a53e39fb6aa799fea79ae</id>
<content type='text'>
</content>
</entry>
<entry>
<title>proto: Pass the early flag to handle_relay_msg()</title>
<updated>2026-02-12T16:35:14Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-02-11T18:18:03Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=f48fc9469efa7a3dd9c762dfb8578aad734104fd'/>
<id>urn:sha1:f48fc9469efa7a3dd9c762dfb8578aad734104fd</id>
<content type='text'>
Needed because some messages are handled differently depending on the
cell type they originated from (RELAY vs RELAY_EARLY).
</content>
</entry>
<entry>
<title>proto: Overhaul forward cell handling</title>
<updated>2026-02-12T16:35:11Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-02-11T17:26:16Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=81cfe9fd719a862be419e0b1784a127650b0eeb8'/>
<id>urn:sha1:81cfe9fd719a862be419e0b1784a127650b0eeb8</id>
<content type='text'>
This pushes the RELAY/REALY_EARLY handling inside
`handle_forward_cell()`, which now decodes the relay cells and

  * handles them internally, if they are unrecognized
    (`handle_unrecognized_cell()`), or
  * returns them back to the base reactor if they are recognized
    (RELAY and RELAY_EARLY cells are handled the same way by the
    base reactor)
</content>
</entry>
<entry>
<title>proto: Give handle_forward_cell() a handle to the hopmgr</title>
<updated>2026-02-12T16:35:11Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-02-12T11:09:40Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=d3ce04d94937605a641d5df5c0671c05153804f7'/>
<id>urn:sha1:d3ce04d94937605a641d5df5c0671c05153804f7</id>
<content type='text'>
Soon this function will be in charge of decoding the cell too, so it
will need a handle to the `HopMgr` (see `decode_relay_cell()`)
</content>
</entry>
</feed>
