<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-proto/src/circuit/reactor.rs, 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>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>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>Remove many needless borrows and slices</title>
<updated>2022-02-02T18:34:26Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2022-02-02T18:18:16Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=b7fec1c8a4ee185b12648414242575e5aec5b581'/>
<id>urn:sha1:b7fec1c8a4ee185b12648414242575e5aec5b581</id>
<content type='text'>
Found via clippy::needless_borrow.  In some cases I removed needless
`[..]` too.  See also:
  needless_borrow suggestion doesn't go far enough
  https://github.com/rust-lang/rust-clippy/issues/8389
</content>
</entry>
<entry>
<title>clippy: Rename a `decode_chanmsg` from `handle_`</title>
<updated>2022-01-19T18:46:13Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2022-01-19T18:45:20Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=9a77b23cddee1ed378ac0af8c2b248c3880bc069'/>
<id>urn:sha1:9a77b23cddee1ed378ac0af8c2b248c3880bc069</id>
<content type='text'>
As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/249#note_2771025

It doens't really handle it.
</content>
</entry>
<entry>
<title>clippy: Rename a `from_foo` method that doesn't do conversion</title>
<updated>2022-01-19T17:26:09Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2022-01-19T17:20:35Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=c4338999488cd332544c6d91cee6b42a36ebe569'/>
<id>urn:sha1:c4338999488cd332544c6d91cee6b42a36ebe569</id>
<content type='text'>
</content>
</entry>
</feed>
