<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-proto/src/circuit, branch arti-v0.4.0</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v0.4.0</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v0.4.0'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2022-04-25T17:06:26Z</updated>
<entry>
<title>squash! Bump every crate's edition to 2021.</title>
<updated>2022-04-25T17:06:26Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-04-25T16:40:33Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=2f6bc6bdc431fa36de70a167eea777dcf3f60bf2'/>
<id>urn:sha1:2f6bc6bdc431fa36de70a167eea777dcf3f60bf2</id>
<content type='text'>
Remove all `use` statements for `TryFrom` and `TryInto`.  These are
now redundant in Rust 2021.
</content>
</entry>
<entry>
<title>Define accessors for circuit hops.</title>
<updated>2022-03-17T16:36:57Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-03-17T16:15:50Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=d39557b851674e775014b044df2414bc5fcdf8f8'/>
<id>urn:sha1:d39557b851674e775014b044df2414bc5fcdf8f8</id>
<content type='text'>
Closes #415
</content>
</entry>
<entry>
<title>tor-proto: Remember peer information in circuit and channel</title>
<updated>2022-03-17T16:03:34Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-03-17T15:52:15Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=764930b9cd8c63a4dd59229ad6298e6b27fb375c'/>
<id>urn:sha1:764930b9cd8c63a4dd59229ad6298e6b27fb375c</id>
<content type='text'>
Each channel now remembers an OwnedChanTarget.

Each circuit now remembers a vector of OwnedChanTarget to represent
the path that it was constructed for.

Part of #415.
</content>
</entry>
<entry>
<title>ClientCirc: Move n_hops into a new Path type.</title>
<updated>2022-03-17T14:34:06Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-03-17T14:34:06Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=567995a7ca187a986d0f1d62a8648ab8c9347b2d'/>
<id>urn:sha1:567995a7ca187a986d0f1d62a8648ab8c9347b2d</id>
<content type='text'>
This will help with #415
</content>
</entry>
<entry>
<title>impl Debug for DataStream (and its components)</title>
<updated>2022-02-24T17:49:34Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2022-02-24T17:47:42Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=b56115a04fb0ebedae04a5302a04501b83b845a6'/>
<id>urn:sha1:b56115a04fb0ebedae04a5302a04501b83b845a6</id>
<content type='text'>
My proximate motivation is that tls-api wants its inner streams to be
Debug.  But in general, I agree with the Rust API Guidelines notion
that almost everything should be Debug.

I have gone for the "dump all the things" approach.  A more nuanced
approach would be possible too.
</content>
</entry>
<entry>
<title>Update tor-proto errors to latest API.</title>
<updated>2022-02-15T14:57:03Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-02-15T14:57:03Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=6b611d6deae2e003ea81f459cd5e005c37ab50ce'/>
<id>urn:sha1:6b611d6deae2e003ea81f459cd5e005c37ab50ce</id>
<content type='text'>
</content>
</entry>
<entry>
<title>tor-proto: use InternalError for internal errors.</title>
<updated>2022-02-15T14:41:11Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-02-11T20:20:50Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=f23f375e42ef3237f9bbb7b8bfee47ecc9ced4a1'/>
<id>urn:sha1:f23f375e42ef3237f9bbb7b8bfee47ecc9ced4a1</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Merge branch 'eta/reactor-2.5' into 'main'</title>
<updated>2022-02-03T16:27:57Z</updated>
<author>
<name>eta</name>
<email>tor@eta.st</email>
</author>
<published>2022-02-03T16:27:57Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=e9087e1fed7193f0cf5b9f9d1078340f216745ed'/>
<id>urn:sha1:e9087e1fed7193f0cf5b9f9d1078340f216745ed</id>
<content type='text'>
Fix severe reactor ordering problems

See merge request tpo/core/arti!282</content>
</entry>
<entry>
<title>Fix severe reactor ordering problems</title>
<updated>2022-02-03T15:04:28Z</updated>
<author>
<name>eta</name>
<email>tor@eta.st</email>
</author>
<published>2022-02-02T14:21:17Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=24d12163f2a5b109adc1d40ad815efecf36cf499'/>
<id>urn:sha1:24d12163f2a5b109adc1d40ad815efecf36cf499</id>
<content type='text'>
A number of severe problems with the circuit reactor were fixed which
could cause reordering of cells (which causes relays to terminate the
circuit with a protocol violation, as they become unable to decrypt
them). These mostly revolve around improper usage of queues:

- The code assumed that a failure to place cells onto the channel would
  persist for the duration of a reactor cycle run. However, under high
  contention, this wouldn't always be the case.
  - This leads to some cells getting enqueued while others go straight
    through, before the enqueued cells.
  - To fix this, we block sending cells out of the channel while there
    are still some enqueued.
- The hop-specific queues queued after encryption, not before. This was
  very brittle, and led to frequent mis-ordering.
  - This was fixed by making them not do that.

This is arti!264 / 5bce9db5628126be2b736f228211174fe4132918 without the
refactor part.
</content>
</entry>
<entry>
<title>Merge branch 'typos' into 'main'</title>
<updated>2022-02-03T13:12:38Z</updated>
<author>
<name>eta</name>
<email>tor@eta.st</email>
</author>
<published>2022-02-03T13:12:38Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=cc37c8f5b5886c0baddf5999c99315465a0aa022'/>
<id>urn:sha1:cc37c8f5b5886c0baddf5999c99315465a0aa022</id>
<content type='text'>
Fix typos

See merge request tpo/core/arti!285</content>
</entry>
</feed>
