<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-proto/src/relay/channel.rs, branch arti-v2.2.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.2.0</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v2.2.0'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2026-03-24T16:04:08Z</updated>
<entry>
<title>Fix typos</title>
<updated>2026-03-24T16:04:08Z</updated>
<author>
<name>Tobias Stoeckmann</name>
<email>tobias@stoeckmann.org</email>
</author>
<published>2026-03-24T16:04:08Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=1fb2b8dd4aee7c943ce90d6631be473f2a296fe6'/>
<id>urn:sha1:1fb2b8dd4aee7c943ce90d6631be473f2a296fe6</id>
<content type='text'>
Typos found with codespell
</content>
</entry>
<entry>
<title>Merge branch 'build_certs_refactor' into 'main'</title>
<updated>2026-03-23T14:33:56Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2026-03-23T14:33:56Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=a2d2c1b8cae94fd1c1c2cfd2602ae91e0599456f'/>
<id>urn:sha1:a2d2c1b8cae94fd1c1c2cfd2602ae91e0599456f</id>
<content type='text'>
cell, proto, cert: Simplify CERTS cell building.

See merge request tpo/core/arti!3795</content>
</entry>
<entry>
<title>proto: Check the AUTHENTICATE auth type that we support it</title>
<updated>2026-03-19T20:31:09Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2026-03-19T18:20:43Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=a0443baf5eaf7ab7214576125eb3a1844f076e13'/>
<id>urn:sha1:a0443baf5eaf7ab7214576125eb3a1844f076e13</id>
<content type='text'>
As a responder, we should check the AUTHENTICATE auth type and make sure
we support it. We were not doing that, we were simply putting in our max
version.

Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
<entry>
<title>tor-proto: get SLOG/CLOG outside of `ChannelAuthenticationData`</title>
<updated>2026-03-19T20:31:09Z</updated>
<author>
<name>Steven Engler</name>
<email>opara@torproject.org</email>
</author>
<published>2026-03-04T23:58:56Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=98106e26034b4fbda6fffe9a30eaed4f75e41c95'/>
<id>urn:sha1:98106e26034b4fbda6fffe9a30eaed4f75e41c95</id>
<content type='text'>
</content>
</entry>
<entry>
<title>proto: Responder channel properly validates the AUTHENTICATE cell</title>
<updated>2026-03-19T20:31:09Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2026-03-04T19:32:50Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=bdda3ba7d82f8d4e856281175b87edcc6e187807'/>
<id>urn:sha1:bdda3ba7d82f8d4e856281175b87edcc6e187807</id>
<content type='text'>
It is now validated against the received KP_link_ed of the initiator
peer and we compare only the section of the AUTHENTICATE cell that we
can compare (minus random bytes and sig).

Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
<entry>
<title>proto: Add specialized build functions for ChannelAuthenticationData</title>
<updated>2026-03-19T20:31:09Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2026-03-04T18:49:21Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=4ccca38289e4ab92bb4c56b5cfd30faf00348926'/>
<id>urn:sha1:4ccca38289e4ab92bb4c56b5cfd30faf00348926</id>
<content type='text'>
The initiator and responder are quite different. Building an
AUTHENTICATE cell is delicate and so this change differenticates clearly
between the two.

This allows us to remove the peer_cert_digest from an UnverifiedChannel
which is only something that makes sense for an initiator.

Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
<entry>
<title>proto: Add the verify_link_auth_cert() helper</title>
<updated>2026-03-19T20:31:08Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2026-03-04T17:44:57Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=f0b0d44794916491778ffd26b6d99601507e1610'/>
<id>urn:sha1:f0b0d44794916491778ffd26b6d99601507e1610</id>
<content type='text'>
The responder channel will soon use it.

Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
<entry>
<title>proto: Use RelayIds in a VerifiedChannel</title>
<updated>2026-03-19T20:31:08Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2026-03-04T16:33:06Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=4958c861bca0b61a60cf33f0f6605788b7b1e4dd'/>
<id>urn:sha1:4958c861bca0b61a60cf33f0f6605788b7b1e4dd</id>
<content type='text'>
In order to pull this off, make
UnverifiedChannel::check_relay_identities() to return a RelayIds that it
builds after checking if they match the peer we were expecting.

This part is moved in this commit so once check_relay_identities()
returns, we are certain of the relay identity validity on both "it
identified properly" and "it is the right expected relay".

This makes it that the check_relay_identities() returns the RelayIds,
the signing key and the RSA id digest (which is needed for
authentication later).

Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
<entry>
<title>cell, proto, cert: Simplify CERTS cell building.</title>
<updated>2026-03-19T15:43:38Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2026-03-19T15:43:38Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=8a4cbe020879ae011c9e02197d824cbe20e2f736'/>
<id>urn:sha1:8a4cbe020879ae011c9e02197d824cbe20e2f736</id>
<content type='text'>
Formerly we required the caller for push_cert_body to specify the
type of the cert that they were pushing.  But in nearly every case,
the certificate object that the caller is holding knows what its
own type is!  This makes the tor_proto build_certs_cell function
a bit less error-prone, since we don't have to worry about mismatch.
</content>
</entry>
<entry>
<title>proto: Make channel PeerAddr sensitive</title>
<updated>2026-03-03T15:51:33Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2026-02-25T14:23:19Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=dab886e765a9a21c934eea39f7ad96d1e1aec935'/>
<id>urn:sha1:dab886e765a9a21c934eea39f7ad96d1e1aec935</id>
<content type='text'>
Only the R2R channel that the PeerAddr becomes unsensitive. The rest, we
keep it sensitive as it can be a client or a client's guard/bridge.

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