<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-proto/src/client, 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-19T20:57:29Z</updated>
<entry>
<title>proto: Pass PeerAddr at the channel handshake finish for initiators</title>
<updated>2026-02-19T20:57:29Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2026-02-19T15:11:44Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=5bc019e82fdc7c8eac940c1c9d7cbd6227fe6ea6'/>
<id>urn:sha1:5bc019e82fdc7c8eac940c1c9d7cbd6227fe6ea6</id>
<content type='text'>
Responder relay handshake requires the peer address at the very start as
it sends its NETINFO right away.

For initiators, we only need it during the finalization process which is
when the NETINFO is sent and the Channel is created.

Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
<entry>
<title>proto: Use the PeerAddr accross channel handshake</title>
<updated>2026-02-19T20:57:29Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2026-02-16T18:09:14Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=7cbd4d561a0c38043d8b074800ab576bf9770f5a'/>
<id>urn:sha1:7cbd4d561a0c38043d8b074800ab576bf9770f5a</id>
<content type='text'>
This is a large change but it is basically using PeerAddr in the channel
builder through the channel handshake code and into the Channel itself.

Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
<entry>
<title>Merge branch 'circ-sync-view-streams' into 'main'</title>
<updated>2026-02-16T15:48:49Z</updated>
<author>
<name>gabi-250</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-02-16T15:48:49Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=639b30dde76dac750aed498c267ca5f03daaa621'/>
<id>urn:sha1:639b30dde76dac750aed498c267ca5f03daaa621</id>
<content type='text'>
proto: Replace circuit-scoped `CircSyncView` with per-hop alternative

Closes #2351

See merge request tpo/core/arti!3680</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: Remove unused n_open_streams() functions</title>
<updated>2026-02-16T15:24:51Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-02-12T18:13:22Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=a91c3d15b2be154569588f48e2ced6e8ed2e6c10'/>
<id>urn:sha1:a91c3d15b2be154569588f48e2ced6e8ed2e6c10</id>
<content type='text'>
</content>
</entry>
<entry>
<title>proto: Replace circuit-scoped n_open_streams() with per-hop alternative</title>
<updated>2026-02-16T15:24:51Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-02-12T17:52:23Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=4a5659119bfe8f352340c042b7897ce7562bc07b'/>
<id>urn:sha1:4a5659119bfe8f352340c042b7897ce7562bc07b</id>
<content type='text'>
`IncomingStreamRequestFilter`s, and `CircSyncView`s, by extension, are used
both by old relay implementation and the new one for implementing an
out-of-reactor way of deciding how to handle an incoming stream.

In the new circuit reactor design, we have a separate stream reactor for
each hop. Upon receiving an incoming stream, the stream reactor will
need to build one of these `CircSyncView` objects, and then pass it to
an externally-provided `IncomingStreamRequestFilter`. Before this
change, `CircSyncView::n_open_streams()` returned the total number of
open streams, which wouldn't have worked with the new reactor design,
because the per-hop stream reactor doesn't have a global view of all the
hops, so its `CircSyncView` can't return the total number of streams (at
least not without message passing, or sharing state with the other
stream reactors).
</content>
</entry>
<entry>
<title>proto: Replace CircSyncView with previously client-only CircSyncView</title>
<updated>2026-02-16T15:24:51Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-02-16T10:58:35Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=863ee4fe98b66d0dd8c7c53f98a6ab1c2ff347f2'/>
<id>urn:sha1:863ee4fe98b66d0dd8c7c53f98a6ab1c2ff347f2</id>
<content type='text'>
Note: this commit only contains the removal of the old `CircSyncView`,
and it of course doens't compile. A future commit will replace the
removed file with the `syncview.rs` from the client module.

This change is split over two commits because it makes reviewing easier
(`git mv`ing the new file over the old results in a confusing diff,
because `git` refuses to show it as a move).
</content>
</entry>
<entry>
<title>proto: Adjust visibility in client::reactor::CircSyncView</title>
<updated>2026-02-16T15:24:48Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-02-12T18:59:35Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=dd25194504bb26ff33e0b751d417486dd5fe2fa5'/>
<id>urn:sha1:dd25194504bb26ff33e0b751d417486dd5fe2fa5</id>
<content type='text'>
This is in preparation for replacing the top-level `CircSyncView` with
it.
</content>
</entry>
<entry>
<title>proto: Use absolute path in CircHopList import</title>
<updated>2026-02-16T15:24:48Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-02-12T18:55:40Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=0adf44ec6eed48c235d3ea57afb7ad205f101a5f'/>
<id>urn:sha1:0adf44ec6eed48c235d3ea57afb7ad205f101a5f</id>
<content type='text'>
This file will be moved to the top-level `circuit` module soon.
</content>
</entry>
<entry>
<title>proto: Rename ClientCircSyncView to CircSyncView</title>
<updated>2026-02-16T15:24:48Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-02-12T18:53:21Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=62ab502560a5a22f5e95901f8b8572edc7d13550'/>
<id>urn:sha1:62ab502560a5a22f5e95901f8b8572edc7d13550</id>
<content type='text'>
This will soon replace `CircSyncView` wholesale. The preliminary
renaming will make the future diffs easier to review.
</content>
</entry>
</feed>
