<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-chanmgr/src/builder.rs, branch arti-v2.0.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.0.0</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v2.0.0'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2026-01-22T16:16:44Z</updated>
<entry>
<title>proto: Remove async for VerifiableChannel::check()</title>
<updated>2026-01-22T16:16:44Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2026-01-20T18:24:04Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=e5c0aae2460463be8c53def32f5460b319f241bb'/>
<id>urn:sha1:e5c0aae2460463be8c53def32f5460b319f241bb</id>
<content type='text'>
Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
<entry>
<title>proto: Send relay channel NETINFO in check()</title>
<updated>2026-01-22T16:16:44Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2026-01-15T16:40:38Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=038ffe345e14df3f76ed60315af00bf10b087859'/>
<id>urn:sha1:038ffe345e14df3f76ed60315af00bf10b087859</id>
<content type='text'>
Once channel is verified and authenticate if need be, send the NETINFO.
We require our advertised IP addresses for this so pass them to launch()
as well to the UnverifiedRelayChannel.

A cargo fmt change slipped in here, sorry about that.

Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
<entry>
<title>proto: Make VerifiableChannel::check() async</title>
<updated>2026-01-22T16:16:44Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2026-01-15T16:08:38Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=4ac721aeb4133ddd97e38065f8d7141d02eb3cb2'/>
<id>urn:sha1:4ac721aeb4133ddd97e38065f8d7141d02eb3cb2</id>
<content type='text'>
Relay initiator needs to send CERTS and AUTHENTICATE in that function
after verifiying the channel.

And thus require to be async.

Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
<entry>
<title>relay: Pass advertised addresses to the channel handler</title>
<updated>2026-01-22T16:16:44Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2026-01-14T19:17:15Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=05c703d7b510f7356be1ec9f0cd62735d7fcee78'/>
<id>urn:sha1:05c703d7b510f7356be1ec9f0cd62735d7fcee78</id>
<content type='text'>
We need the advertised addresses for the NETINFO cell when opening a
relay channel. Keep them in the TorRelay object so we can pass them to
the ChanMgr channel handler.

This will also help with config reload where only the local values in
TorRelay will need to be updated.

Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
<entry>
<title>chanmgr: Get rid of the builder outbound_chan_type</title>
<updated>2026-01-13T18:46:18Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2026-01-08T17:31:03Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=9e359a4e2d5671faeb1471f9f8c945ef9ebf5e07'/>
<id>urn:sha1:9e359a4e2d5671faeb1471f9f8c945ef9ebf5e07</id>
<content type='text'>
Instead, we'll simply use `RelayInitiator` if the identity keys
(identities) struct is set.

This avoids the problem where someone could call outbound_chan_type() of
the ChanMgrConfig and get the wrong channel type if with_identities() is
set after.

This way, a single call, `with_identities()` is what will define the
outbound channel type so no chance of errors.

This also removes the cfg_if {} around the builder creation in a much
more simplified version.

Related to #1599

Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
<entry>
<title>chanmgr: Use the new tor-proto channel traits in builder</title>
<updated>2026-01-13T18:46:18Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2025-12-18T18:26:59Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=6eb080444429148b276f089ada22748e670f3ebc'/>
<id>urn:sha1:6eb080444429148b276f089ada22748e670f3ebc</id>
<content type='text'>
Remove code duplication and simplifies the code by using the new
VerifiableChannel and FinalizableChannel traits.

Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
<entry>
<title>proto: Add traits for public channel views</title>
<updated>2026-01-13T18:46:18Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2025-12-16T20:09:53Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=fb69ddcdd6c47485cdb0bb15be0345275221a2b0'/>
<id>urn:sha1:fb69ddcdd6c47485cdb0bb15be0345275221a2b0</id>
<content type='text'>
Add traits that will be returned outside tor-proto allowing us to not
expose client and relay specific channels.

The goal is for the tor-chanmgr to get those objects implementing those
traits and can build and run the reactor without knowing the specific
underlying type.

This allows us to have less code duplication and less client/relay
distinction in the chanmgr.

Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
<entry>
<title>chanmgr: Add a relay channel connect to ChanBuilder</title>
<updated>2026-01-13T18:46:18Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2025-12-16T19:30:58Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=bae812cc03e804e9870293a06aa4005e1c6744d6'/>
<id>urn:sha1:bae812cc03e804e9870293a06aa4005e1c6744d6</id>
<content type='text'>
First, this is not great. Lots of duplicated code but it is a starting
point that we can build on top to remove code duplication.

Future commit will address this but for now, the client and relay
mechanics are implemented.

Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
<entry>
<title>chanmgr: Rename the connect_no_timeout() to be client specific</title>
<updated>2026-01-13T18:46:18Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2025-12-16T18:53:43Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=46bca01bcc1c6f8e4a93a31f81bfcff5dd25a44a'/>
<id>urn:sha1:46bca01bcc1c6f8e4a93a31f81bfcff5dd25a44a</id>
<content type='text'>
Heavy refactoring coming up for the ChanBuilder. This renames
connect_no_timeout() to be client specific and uses the client channel
builder directly instead of the generic one.

Previous commit added the outbound ChannelType to the ChanBuilder which
means that we'll soon have a relay specific function to connect using
the relay channel builder.

Refactoring will then happen for shared code in those two functions.

Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
<entry>
<title>chanmgr: Add RelayIdentities to ChanBuilder</title>
<updated>2026-01-13T18:46:18Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2025-12-16T19:09:48Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=03c81060856c08890e32acf0e4982be74674ca5c'/>
<id>urn:sha1:03c81060856c08890e32acf0e4982be74674ca5c</id>
<content type='text'>
Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
</feed>
