<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-proto/src/circuit, branch arti-v1.1.10</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v1.1.10</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v1.1.10'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2023-10-26T15:14:40Z</updated>
<entry>
<title>Add a caret_int HandshakeType for HTYPE constants</title>
<updated>2023-10-26T15:14:40Z</updated>
<author>
<name>Jim Newsome</name>
<email>jnewsome@torproject.org</email>
</author>
<published>2023-10-25T19:30:45Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=87081e51b503eb704d44e611f1ece614f42160f5'/>
<id>urn:sha1:87081e51b503eb704d44e611f1ece614f42160f5</id>
<content type='text'>
</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>Convert StreamId to NonZeroU16</title>
<updated>2023-10-25T20:34:55Z</updated>
<author>
<name>Jim Newsome</name>
<email>jnewsome@torproject.org</email>
</author>
<published>2023-10-23T22:57:46Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=48d95b8be53177d34012c53dd84ed888ebfb5cc8'/>
<id>urn:sha1:48d95b8be53177d34012c53dd84ed888ebfb5cc8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>proto: Revise the behavior of IncomingStream::discard().</title>
<updated>2023-10-19T17:15:10Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-10-18T14:30:35Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=1b2a4de2eb6a11157879cb53839eaee9e658ba4d'/>
<id>urn:sha1:1b2a4de2eb6a11157879cb53839eaee9e658ba4d</id>
<content type='text'>
Because dropping a `StreamTarget` causes the circuit reactor to send
an End, the previous do-nothing implementation of `discard()` wasn't
sufficient to cause the request to be ignored without sending an
End.

This commit modifies our "close pending stream" behavior to only
optionally send an End message.  To avoid confusion, I'm using a new
`CloseStreamBehavior` enum rather than an `Option&lt;End&gt;`, since we
had previously used `None` in some cases to indicate a default
(misc) end message.
</content>
</entry>
<entry>
<title>proto: Remove TODOs about panics on double-close.</title>
<updated>2023-10-19T17:15:10Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-10-18T14:02:11Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=658ff9b476b85f019bd4d3f0268e8d16404e6007'/>
<id>urn:sha1:658ff9b476b85f019bd4d3f0268e8d16404e6007</id>
<content type='text'>
Now that `StreamMap::terminate` no longer panics, and now that it
permits the kind of double-call that we allow, we can close #1065.

Closes #1065.
</content>
</entry>
<entry>
<title>proto: Have EndSent remember if we have dropped the stream target.</title>
<updated>2023-10-19T17:15:10Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-10-18T13:53:55Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=6cbde09414c1411d8ab3267b732da49068f8ef4a'/>
<id>urn:sha1:6cbde09414c1411d8ab3267b732da49068f8ef4a</id>
<content type='text'>
The rule is that we allow up to one explicit `close_pending`,
followed by exactly one final `mpsc::Sender` drop.
</content>
</entry>
<entry>
<title>proto: Give StreamMap::terminate a "why" argument</title>
<updated>2023-10-19T17:15:10Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-10-18T13:42:22Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=487e0cb45ad57b050223f4427f8bca793d646d32'/>
<id>urn:sha1:487e0cb45ad57b050223f4427f8bca793d646d32</id>
<content type='text'>
We will use this to enforce correct ordering on "close" vs "drop"
APIs.
</content>
</entry>
<entry>
<title>Add comments about another problem with close_pending().</title>
<updated>2023-10-17T13:04:24Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-10-17T13:04:24Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=4fa9e1644870e1a0f555ff5837214e2084e40707'/>
<id>urn:sha1:4fa9e1644870e1a0f555ff5837214e2084e40707</id>
<content type='text'>
See #1065 for more information here.
</content>
</entry>
<entry>
<title>proto: Remove a TODO about merging two functions.</title>
<updated>2023-10-12T13:04:33Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-10-12T13:02:07Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=1c44f028920269a00aed51b0d0e7d9c9ca3deb66'/>
<id>urn:sha1:1c44f028920269a00aed51b0d0e7d9c9ca3deb66</id>
<content type='text'>
There is some similarity, but there's not really a logical way
to combine the two that actually results in less, clearer code.
</content>
</entry>
<entry>
<title>Lower and downgrade a TODO about StreamID and NonZeroU16.</title>
<updated>2023-10-12T12:58:28Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-10-12T12:58:28Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=43de6d1f1411cfe684b28995799de95955d65561'/>
<id>urn:sha1:43de6d1f1411cfe684b28995799de95955d65561</id>
<content type='text'>
</content>
</entry>
</feed>
