<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-proto/src/channel, branch arti-v1.2.7</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v1.2.7</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v1.2.7'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2024-08-28T14:27:46Z</updated>
<entry>
<title>extract tor_async_utils::oneshot into ::oneshot-fused-workaround</title>
<updated>2024-08-28T14:27:46Z</updated>
<author>
<name>Jim Newsome</name>
<email>jnewsome@torproject.org</email>
</author>
<published>2024-08-22T19:20:36Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=46f7f01092e6ac55e3e958dc3a2228b1d36e26a1'/>
<id>urn:sha1:46f7f01092e6ac55e3e958dc3a2228b1d36e26a1</id>
<content type='text'>
Having this in the `tor-async-utils` crate prevents us from doing both
of the following without introducing a circular dependency:

* using it in `tor-rtmock` (which we currently do, particularly in
  tests).
* using `tor-rtmock` to test things in `tor-async-utils`. We don't do
  this yet, but it is generally sensible to do so. In particular we
  want to move the `stream_peak` module there, which is currently tested
  with `tor-rtmock`.

Moving this into its own crate avoids this circular dependency.
</content>
</entry>
<entry>
<title>UnverifiedChannel: Clarify check's peer_cert</title>
<updated>2024-07-11T18:35:18Z</updated>
<author>
<name>Clara Engler</name>
<email>cve@cve.cx</email>
</author>
<published>2024-07-11T18:35:18Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=0bafabfb8c6e326433386fe543948595f7ecbefd'/>
<id>urn:sha1:0bafabfb8c6e326433386fe543948595f7ecbefd</id>
<content type='text'>
This commit clarifies the documentation of the `peer_cert` parameter in
the `UnverifiedChannel::check` function, in order to reflect that it
represents the certificate presented during the ServerHello in the TLS
handshake and not in the in-protocol CERTS cell.
</content>
</entry>
<entry>
<title>proto: Divide up some elements of ChannelDetails.</title>
<updated>2024-05-16T16:24:12Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2024-05-16T16:15:17Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=98dc42c3e0a4cfa9f5663b01ff27d085e725ca57'/>
<id>urn:sha1:98dc42c3e0a4cfa9f5663b01ff27d085e725ca57</id>
<content type='text'>
Previously ChannelDetails had a double duty: It held elements shared
among the clones of a Channel, and it also held elements shared
between the Channel and the Reactor.  But now that Channel doesn't
have to implement Clone, we can more the non-Reactor elements into
Channel itself.

This change may improve cache locality a bit, and should make it a
little easier to follow the channel code.

I've also moved unique_id out of ChannelDetails into Channel _and_
Reactor: it is small, immutable, and used all the time in logging.
</content>
</entry>
<entry>
<title>proto: Make Channel explicitly Arc&lt;.&gt;</title>
<updated>2024-05-16T16:24:12Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2024-05-16T15:51:41Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=822ff7b1ba21ed59b697aab45fd0b00f88479cef'/>
<id>urn:sha1:822ff7b1ba21ed59b697aab45fd0b00f88479cef</id>
<content type='text'>
Previously, Channel was a type that you could Clone that implicitly
its state.  Now, Channel always appears as an Arc&lt;Channel&gt;.

This change has several benefits:

  * It makes the relationship between Channel struct and the
    underlying channel more clear.
  * It enables Channel to participate in the RPC system,
    where everything has to be an Arc&lt;.&gt;
  * It enables us to have a Weak&lt;Channel&gt;, if we ever want to.
  * It will let us move various members out of ChannelDetails.

We did this change a while ago with ClientCirc.
</content>
</entry>
<entry>
<title>Use uXX::MAX in place of std::uXX::MAX</title>
<updated>2024-04-22T17:00:29Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2024-04-22T17:00:29Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=4a1ad1dc89f6a9f48c84411560c1617d9e487abc'/>
<id>urn:sha1:4a1ad1dc89f6a9f48c84411560c1617d9e487abc</id>
<content type='text'>
The old code produced a warning from clippy nightly; we may as well
update to use the new associated consts.  (They've been there since
Rust 1.4x.)
</content>
</entry>
<entry>
<title>Run maint/add_warning.</title>
<updated>2024-03-13T16:30:53Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2024-03-13T16:30:53Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=c0c9bd15d42897825dd0ab3d3b8dd1c17bd6320c'/>
<id>urn:sha1:c0c9bd15d42897825dd0ab3d3b8dd1c17bd6320c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>clippy: Replace many calls to .get(0) with .first()</title>
<updated>2024-01-02T13:56:08Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2024-01-02T12:48:44Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=b9da8cf60618b16c021d3ecf1ec24e2dce56aff5'/>
<id>urn:sha1:b9da8cf60618b16c021d3ecf1ec24e2dce56aff5</id>
<content type='text'>
FTR I don't think agree with clippy on this question, but then I often
don't.
</content>
</entry>
<entry>
<title>Downgrade some messages to trace</title>
<updated>2023-11-29T18:51:30Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2023-11-29T18:44:06Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=d67519d71b2f452dcc947acc12b3bdc50e3e7920'/>
<id>urn:sha1:d67519d71b2f452dcc947acc12b3bdc50e3e7920</id>
<content type='text'>
These messages are very verbose and I doubt anyone will want them,
usually, even when debugging.
</content>
</entry>
<entry>
<title>Change `CircId` to never be zero</title>
<updated>2023-10-25T20:35:12Z</updated>
<author>
<name>Jim Newsome</name>
<email>jnewsome@torproject.org</email>
</author>
<published>2023-10-24T18:47:06Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=3fba6685fec3437f4afa3b3e8f94b6448117e73e'/>
<id>urn:sha1:3fba6685fec3437f4afa3b3e8f94b6448117e73e</id>
<content type='text'>
This changes the internal representation to be `NonZeroU32` instead of
just `u32`.

Various places where a circuit ID is optional now use `Option&lt;CircId&gt;`.

Fixes a bug in `CircIdRange::sample` that would previously return a
circuit ID of 0, when the rng returned 0x8000_0000 for a low range.
</content>
</entry>
<entry>
<title>Upgrade to latest asynchronous_codec (0.7.0)</title>
<updated>2023-10-17T16:26:26Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-10-17T16:26:26Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=116a836a7269134edb73825e5b22f788e3493f4e'/>
<id>urn:sha1:116a836a7269134edb73825e5b22f788e3493f4e</id>
<content type='text'>
</content>
</entry>
</feed>
