<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-hsservice/src/rend_handshake.rs, branch arti-v1.7.0</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v1.7.0</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v1.7.0'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2025-08-28T10:54:48Z</updated>
<entry>
<title>proto: Add a circuit module shared between client and relay impls.</title>
<updated>2025-08-28T10:54:48Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2025-08-26T17:48:56Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=4ee5a4abcee895e79588888f6bc8eaa6963a6ba7'/>
<id>urn:sha1:4ee5a4abcee895e79588888f6bc8eaa6963a6ba7</id>
<content type='text'>
This is just code motion (I suggest reviewing with `--color-moved`).

This also moves the implementation-agnostic parts from
`tor_proto::client::circuit` to a new `tor_proto::circuit` module.
</content>
</entry>
<entry>
<title>proto: Move the `stream` module under `client` (breaking).</title>
<updated>2025-08-18T16:09:04Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2025-08-18T15:52:38Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=702e7276898d3f31e22033c5b64fea91703f3701'/>
<id>urn:sha1:702e7276898d3f31e22033c5b64fea91703f3701</id>
<content type='text'>
The `stream` module is client-specific, for the most part, so I am
moving it under `client`. Later on, we will factor out the parts that
can be shared with the relay implementation.

Note: this is a breaking change as the deleted `stream` module was
`pub`. We could've kept the module and reexported from it the public
types from `tor_proto::client::stream`, but I think it's better to have
this `client` namespacing, because it makes the separation between the
client and relay parts clearer.
</content>
</entry>
<entry>
<title>Switch Cargo.toml files to edition 2024.</title>
<updated>2025-08-07T15:28:36Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-08-06T01:19:58Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=77b0de43b8c67cdb81befe0680a3df43b6ad37bc'/>
<id>urn:sha1:77b0de43b8c67cdb81befe0680a3df43b6ad37bc</id>
<content type='text'>
First, run

```
git grep -l "^edition =" |
    xargs perl -i -pe 's/^edition *=.*/edition = "2024"/;'
```

Second, manually verify that all Cargo.toml files have changed,
and nothing else has changed.

Third, run cargo fmt again.
</content>
</entry>
<entry>
<title>hsservice: Do not send the REND1 to the virtual hop.</title>
<updated>2025-08-05T18:23:03Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2025-07-22T11:42:30Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=cc29b8bf51c28f4c97ff3002c1fdda6380dd305b'/>
<id>urn:sha1:cc29b8bf51c28f4c97ff3002c1fdda6380dd305b</id>
<content type='text'>
The service is supposed to send the RENDEZVOUS1 to the rendezvous point
itself, not the virtual hop.
</content>
</entry>
<entry>
<title>hs: Use the new Tunnel interface for onion service</title>
<updated>2025-08-05T18:23:02Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2025-05-07T18:10:53Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=8333a2d7c9e4842753e65d978087e54a8ad43789'/>
<id>urn:sha1:8333a2d7c9e4842753e65d978087e54a8ad43789</id>
<content type='text'>
</content>
</entry>
<entry>
<title>hsservice: Stop using HopNum and use TargetHop</title>
<updated>2025-06-26T14:18:30Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2025-06-25T15:00:25Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=611a35888fc2780d7cca31f0a3b7b1b88ccf8079'/>
<id>urn:sha1:611a35888fc2780d7cca31f0a3b7b1b88ccf8079</id>
<content type='text'>
This requires some changes to the tor-proto crate to handle the inbound
TargetHop from the HS subsystem and then resolve it into a HopNum for a
single circuit.

It is expected that this will change again with Conflux to only use
HopLocation internally in a Tunnel and then use HopNum into a Circuit.

Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
<entry>
<title>proto: Make send_raw_msg() use a TargetHop</title>
<updated>2025-06-26T14:18:30Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2025-06-19T19:02:34Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=75dbf8e686d7b8852f63091fc440d285b9e254b4'/>
<id>urn:sha1:75dbf8e686d7b8852f63091fc440d285b9e254b4</id>
<content type='text'>
In order for this to work, a last_target_hop() function is added to
ClientCirc in order to return a precise hop location as a TargetHop of
the last hop.

This is needed because in the HS subsystem, we need such value in order
to get a location on the last physical hop before adding the virtual
hop.

The RDV1 cell is sent to that last target hop while the
allow_stream_request() is done on the virtual target hop.

Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
<entry>
<title>proto: Move NegotiatedHopSettings to a higher level</title>
<updated>2025-06-10T15:52:28Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-06-05T16:11:30Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=e07000a2ea86f1205ed9dc44228c0b2c69f1a36b'/>
<id>urn:sha1:e07000a2ea86f1205ed9dc44228c0b2c69f1a36b</id>
<content type='text'>
We will construct this object based on the circuit parameters _and_
on the target's supported protocol versions, so we need to do so
when we have both pieces of info.
</content>
</entry>
<entry>
<title>Add methods for getting proof-of-work extension from intro request.</title>
<updated>2025-05-27T18:04:31Z</updated>
<author>
<name>Wesley Aptekar-Cassels</name>
<email>me@wesleyac.com</email>
</author>
<published>2025-01-22T16:29:20Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=bb8358208ac16379b44bcecff7ceb8cd6507c943'/>
<id>urn:sha1:bb8358208ac16379b44bcecff7ceb8cd6507c943</id>
<content type='text'>
</content>
</entry>
<entry>
<title>squash! Upgrade rand dependency to 0.9.</title>
<updated>2025-03-18T16:09:44Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-03-18T13:01:31Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=2f8993c22c2b86010e4fd8b5169ef0ab83f8c754'/>
<id>urn:sha1:2f8993c22c2b86010e4fd8b5169ef0ab83f8c754</id>
<content type='text'>
- `rand::thread_rng()` has been deprecated and renamed to `rand::rng()`
</content>
</entry>
</feed>
