<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-chanmgr/src/lib.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-27T18:05:36Z</updated>
<entry>
<title>maint/add_warning: Run script to add new warning</title>
<updated>2026-01-27T18:05:36Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-01-27T18:05:36Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=a98faf72eb06b47700faeeac5a8a0dd0fc29b584'/>
<id>urn:sha1:a98faf72eb06b47700faeeac5a8a0dd0fc29b584</id>
<content type='text'>
This adds the lint to all our crates.
</content>
</entry>
<entry>
<title>proto: Improve comment for handle_incoming()</title>
<updated>2026-01-22T16:16:44Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2026-01-20T19:02:01Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=8fca9013eab4aeef8f5b0ebc479a2cf7abc8146b'/>
<id>urn:sha1:8fca9013eab4aeef8f5b0ebc479a2cf7abc8146b</id>
<content type='text'>
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: Spawn task for ChannelProvider impl of get_or_launch()</title>
<updated>2026-01-13T18:46:18Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2026-01-08T18:15:14Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=0e9f9bc8b15831d1d1f3cfcfe25d810e3b0e6156'/>
<id>urn:sha1:0e9f9bc8b15831d1d1f3cfcfe25d810e3b0e6156</id>
<content type='text'>
To pull this off, ChannelProvider::get_or_launch() needed to change from
"&amp;self" to "self: Arc&lt;Self&gt;" so we could pass self to the spawned task.

This is fine as the caller of ChannelProvider (circuit reactor) has a
Arc&lt;ChanMgr&gt;.

This also removes the PhantomData for the runtime as we now actually use
it.

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>build: Fixes for non relay feature</title>
<updated>2026-01-13T18:46:18Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2026-01-07T14:57:34Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=c3792cbc87b84aa0bab10a4f5d731d1116172402'/>
<id>urn:sha1:c3792cbc87b84aa0bab10a4f5d731d1116172402</id>
<content type='text'>
Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
<entry>
<title>chanmgr: Implement tor_proto::ChannelProvider for ChanMgr</title>
<updated>2026-01-13T18:46:18Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2026-01-06T17:33:06Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=79b9ae5bcc914641d1ac0696b80b50fed4c826a2'/>
<id>urn:sha1:79b9ae5bcc914641d1ac0696b80b50fed4c826a2</id>
<content type='text'>
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>
<entry>
<title>chanmgr: Add ChannelType to channel manager config</title>
<updated>2026-01-13T18:46:17Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2025-12-16T18:15:06Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=bbb3785f80da837a5c1e86845cdf6f80668625a3'/>
<id>urn:sha1:bbb3785f80da837a5c1e86845cdf6f80668625a3</id>
<content type='text'>
This allows us to pass it to the ChanBuilder which will be able to use
this type for the outbound channels.

For now, we do this trick where if we have relay identities, we always
consider that all outbound channels will be RelayInitiator.

Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
<entry>
<title>chanmgr: Introduce a ChanMgrConfig struct</title>
<updated>2026-01-13T18:45:24Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2025-12-16T17:56:06Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=0eb2e1d5ef74e26114a85f4827991c5bea7b20b9'/>
<id>urn:sha1:0eb2e1d5ef74e26114a85f4827991c5bea7b20b9</id>
<content type='text'>
This struct is used to pass configuration parameters to the ChanMgr when
building it.

At the moment, it holds the ChannelConfig and RelayIdentities (feature
gated) which will be used in subsequent commits.

Note that relays do require RelayIdentities to build channels.

Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
</feed>
