<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-proto/src/tunnel/circuit.rs, branch arti-v1.4.2</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v1.4.2</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v1.4.2'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2025-03-11T14:53:15Z</updated>
<entry>
<title>tor-proto: begin using `TargetHop` and `HopLocation`</title>
<updated>2025-03-11T14:53:15Z</updated>
<author>
<name>Steven Engler</name>
<email>opara@torproject.org</email>
</author>
<published>2025-02-26T05:05:35Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=9ca41eb392bdaf0e022f2fe6fb313cbb07c0fc47'/>
<id>urn:sha1:9ca41eb392bdaf0e022f2fe6fb313cbb07c0fc47</id>
<content type='text'>
This doesn't yet change the public API, it just begins the work of
plumbing these around throughout `ClientCirc`, `Reactor`, etc.

This can't be broken up into smaller commits without causing build
failures.
</content>
</entry>
<entry>
<title>tor-proto: add a non-pub `ClientCirc::legs()` method</title>
<updated>2025-03-11T14:53:15Z</updated>
<author>
<name>Steven Engler</name>
<email>opara@torproject.org</email>
</author>
<published>2025-03-10T06:16:01Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=c2d9ea952b4dcb91d05ee754e8d1a6ec6a0689b2'/>
<id>urn:sha1:c2d9ea952b4dcb91d05ee754e8d1a6ec6a0689b2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>tor-proto: Use a ConfluxSet in the circuit reactor.</title>
<updated>2025-02-25T11:14:57Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2025-02-12T12:04:25Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=84266aca8fc1ebfec6f618af5ce7415e10f084a1'/>
<id>urn:sha1:84266aca8fc1ebfec6f618af5ce7415e10f084a1</id>
<content type='text'>
This is the first step toward supporting traffic splitting in the
circuit reactor.

While the logic has changed slightly to support handling circuits
instead of just one, the reactor still only supports `ConfluxSet`s of
size 1, so this should effectively be a no-op. In the future, this code
will be extended to support the conflux-specific cells and to implement
the conflux proto.

The code uses `ConfluxSet::primary_leg()` and `ConfluxSet::single_leg()`
somewhat interchangeably. This is not *currently* a problem
because`primary_leg()` is the same as `single_leg()` for single path
tunnels, but we will need to adjust some of these call sites when we add
support for multipath tunnels (I have left a `TODO(conflux)` for every
dubious call site).

This commit also makes `CtrlMsg::FirstHopClockSkew` fallible: if the
reactor is multipath, it will return `Err(Bug(..))` to the caller (this
error is returned to the caller over the `answer` channel; it does *not*
shut down the reactor)
</content>
</entry>
<entry>
<title>tor-proto: Add a tunnel module.</title>
<updated>2025-02-20T20:15:12Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2025-02-13T16:58:04Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=31ee1dbbe88f92d99d66614d0625cb6e87d48edd'/>
<id>urn:sha1:31ee1dbbe88f92d99d66614d0625cb6e87d48edd</id>
<content type='text'>
Move StreamTarget to the tunnel module and the circuit module.

From now on streams will be implemented on tunnels, not circuits.

This moves `StreamTarget` to the tunnel module. A future change will
replace `ClientCirc` with `ClientTunnel` inside `StreamTarget`.

This is mostly code motion, best reviewed with `--color-moved`.

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