<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-proto/src/relay, branch main</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=main</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=main'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2026-08-19T17:27:23Z</updated>
<entry>
<title>tor-proto: add `StreamHandler::flowctrl_sidechannel_mitigations()`</title>
<updated>2026-08-19T17:27:23Z</updated>
<author>
<name>Steven Engler</name>
<email>opara@torproject.org</email>
</author>
<published>2026-08-19T17:27:23Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=f32fbb29337808e98ac3832a04bcb8e77f65b749'/>
<id>urn:sha1:f32fbb29337808e98ac3832a04bcb8e77f65b749</id>
<content type='text'>
</content>
</entry>
<entry>
<title>proto: Extend test to check DESTROY is sent to the next hop</title>
<updated>2026-08-18T16:13:57Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-08-18T10:18:44Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=d849b8b84285eb7ae579c0f58988f8be06cde4e4'/>
<id>urn:sha1:d849b8b84285eb7ae579c0f58988f8be06cde4e4</id>
<content type='text'>
This extends the `destroy_from_client()` test to also check that a
DESTROY received from the client (or, more generally speaking, from the
"inbound channel") is actually forwarded to the next hop.

The reason the `assert_destroy_sent()` assertion is commented out is
specified in the TODO that precedes it (tldr: testing the DESTROY
behaviour involves both the channel reactor and the circuit reactor, and
our test setup is currently quite limited, in that it doesn't actually
exercise the right channel reactor code paths for the *inbound*
channel). I plan to address this soon.
</content>
</entry>
<entry>
<title>proto: Move assert_cell_is_destroy macro out of helper function</title>
<updated>2026-08-18T16:13:57Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-08-18T10:16:56Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=5a34a40326a1d1e014725bac526a4505f4cf7691'/>
<id>urn:sha1:5a34a40326a1d1e014725bac526a4505f4cf7691</id>
<content type='text'>
I am about to need this in a test.
</content>
</entry>
<entry>
<title>proto: Add comments explaining why the tests use DestroyDirection::Backward</title>
<updated>2026-08-18T16:13:57Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-08-18T10:09:45Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=fa6e21cc03b008662cc906ae59f639ba9985368c'/>
<id>urn:sha1:fa6e21cc03b008662cc906ae59f639ba9985368c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>proto: Remove misleading comment and rename misnamed variable</title>
<updated>2026-08-18T16:13:57Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-08-18T10:08:43Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=f0266082010685d29be0c7f386b116adb2467581'/>
<id>urn:sha1:f0266082010685d29be0c7f386b116adb2467581</id>
<content type='text'>
This fixes an old bad copy-paste that I've just noticed.
</content>
</entry>
<entry>
<title>proto: Clarify what read_{inbound,outbound} are for</title>
<updated>2026-08-18T16:13:57Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-08-18T09:42:15Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=e9e6cf8a3047bb4d222894969f9a1fba4a710acc'/>
<id>urn:sha1:e9e6cf8a3047bb4d222894969f9a1fba4a710acc</id>
<content type='text'>
This adds an example suggested by opara.
</content>
</entry>
<entry>
<title>proto: Update the tests to check DESTROY is only sent when needed</title>
<updated>2026-08-18T16:13:57Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-08-13T16:27:41Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=8bcc721b73efafbf1a0ca95610afb044434f07a5'/>
<id>urn:sha1:8bcc721b73efafbf1a0ca95610afb044434f07a5</id>
<content type='text'>
</content>
</entry>
<entry>
<title>proto: Allocate a real circ id in the circ reactor tests</title>
<updated>2026-08-18T16:13:57Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-08-13T15:39:16Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=1d0cfbba5bc27dc5f969941819d29706514df738'/>
<id>urn:sha1:1d0cfbba5bc27dc5f969941819d29706514df738</id>
<content type='text'>
We need this because the channel reactor now only sends DESTROY for
circuits that are still in the circ map (and we are about to test this
behaviour, so we need the circuit map to actually have an entry for our
test circuit).

Initially, these tests were meant to test the circuit reactor in
isolation, but they've gradually grown more complex, and now require
a semi-working channel reactor. In the long run, I think I'd like to:

  * change the tests from `tor_proto::relay::reactor` to use a proper
    relay channel reactor as opposed to a `working_dummy_channel()`, and
    to initialize a circuit through the normal means, namely by sending
    a CREATE2 through the channel reactor (naturally, this "proper relay
    channel reactor" still wouldn't be connected to the network). These
    will test the integration between the channel and the circuit
    reactor, as well as the circuit reactor behaviour
  * add new, implementation-agnostic tests for the generic multi-reactor
    system. These will use a mock channel reactor
</content>
</entry>
<entry>
<title>proto: Update create handler tests to no longer expect DESTROY</title>
<updated>2026-08-18T16:13:57Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-08-13T14:49:22Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=9857a5bbe5483e2130c6a8a5108350aa7cb7f114'/>
<id>urn:sha1:9857a5bbe5483e2130c6a8a5108350aa7cb7f114</id>
<content type='text'>
Now that we no longer respond to DESTROY by sending a DESTROY ourselves,
these tests need to be updated.
</content>
</entry>
<entry>
<title>proto: s/client/next hop in test comment</title>
<updated>2026-08-18T16:13:57Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-08-13T14:40:07Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=93f0d89002f5328e1008a7d1c38f1a578f7a1f96'/>
<id>urn:sha1:93f0d89002f5328e1008a7d1c38f1a578f7a1f96</id>
<content type='text'>
This test simulates the *next hop* sending us a DESTROY.
</content>
</entry>
</feed>
