<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-dirserver, branch arti-v2.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-v2.4.0</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v2.4.0'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2026-06-01T16:32:03Z</updated>
<entry>
<title>Bump all the unstable tor- and arti- crates to 0.43.0</title>
<updated>2026-06-01T16:32:03Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-06-01T16:32:03Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=2100e7c8586af3616310d2bc18bbe971af77f1f1'/>
<id>urn:sha1:2100e7c8586af3616310d2bc18bbe971af77f1f1</id>
<content type='text'>
Done using:

```
for crate in $(./maint/list-crates  | rg '^(tor|arti-)'); do
    cargo set-version -p $crate 0.43.0
done
```
</content>
</entry>
<entry>
<title>Merge branch 'directory-signature-3' into 'main'</title>
<updated>2026-05-13T07:33:35Z</updated>
<author>
<name>Clara Engler</name>
<email>cve@cve.cx</email>
</author>
<published>2026-05-13T07:33:35Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=a5bcb784c89a9ff17e547313e4999bf7e737ed16'/>
<id>urn:sha1:a5bcb784c89a9ff17e547313e4999bf7e737ed16</id>
<content type='text'>
tor-netdoc: Sort out netstatus signatures

See merge request tpo/core/arti!3937</content>
</entry>
<entry>
<title>Upgrade rand crates to 0.10.</title>
<updated>2026-05-12T20:55:43Z</updated>
<author>
<name>Wesley Aptekar-Cassels</name>
<email>me@wesleyac.com</email>
</author>
<published>2026-05-07T20:06:21Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=a18167928901d8c88cd1cdd87346de8ad1ee42a2'/>
<id>urn:sha1:a18167928901d8c88cd1cdd87346de8ad1ee42a2</id>
<content type='text'>
When the circ-padding feature is enabled, we use maybenot, which does
not yet support rand 0.10. In the meantime, enabling this feature pulls
in rand 0.9. This is not ideal, but should be okay as a temporary
situation.

This also replaces the use of ReseedingRng (which was removed in 0.10)
with the reseeding_rng crate. This is somewhat less performant, but it
should be okay.
</content>
</entry>
<entry>
<title>release: Bump tor- and arti- crate versions.</title>
<updated>2026-05-06T16:59:22Z</updated>
<author>
<name>Wesley Aptekar-Cassels</name>
<email>me@wesleyac.com</email>
</author>
<published>2026-05-06T16:59:22Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=ff8102632670bb1f8d1fb84737ed49f32d3032a9'/>
<id>urn:sha1:ff8102632670bb1f8d1fb84737ed49f32d3032a9</id>
<content type='text'>
cargo set-version -p arti-client 0.42.0
cargo set-version -p arti-config 0.42.0
cargo set-version -p arti-relay 0.42.0
cargo set-version -p arti-rpc-client-core 0.42.0
cargo set-version -p arti-rpcserver 0.42.0
cargo set-version -p arti-testing 0.42.0
cargo set-version -p arti-ureq 0.42.0
cargo set-version -p tor-async-utils 0.42.0
cargo set-version -p tor-basic-utils 0.42.0
cargo set-version -p tor-bytes 0.42.0
cargo set-version -p tor-cell 0.42.0
cargo set-version -p tor-cert 0.42.0
cargo set-version -p tor-cert-x509 0.42.0
cargo set-version -p tor-chanmgr 0.42.0
cargo set-version -p tor-checkable 0.42.0
cargo set-version -p tor-circmgr 0.42.0
cargo set-version -p tor-config 0.42.0
cargo set-version -p tor-config-path 0.42.0
cargo set-version -p tor-consdiff 0.42.0
cargo set-version -p tor-dirclient 0.42.0
cargo set-version -p tor-dircommon 0.42.0
cargo set-version -p tor-dirmgr 0.42.0
cargo set-version -p tor-dirserver 0.42.0
cargo set-version -p tor-error 0.42.0
cargo set-version -p tor-events 0.42.0
cargo set-version -p tor-general-addr 0.42.0
cargo set-version -p tor-geoip 0.42.0
cargo set-version -p tor-guardmgr 0.42.0
cargo set-version -p tor-hsclient 0.42.0
cargo set-version -p tor-hscrypto 0.42.0
cargo set-version -p tor-hsrproxy 0.42.0
cargo set-version -p tor-hsservice 0.42.0
cargo set-version -p tor-key-forge 0.42.0
cargo set-version -p tor-keymgr 0.42.0
cargo set-version -p tor-linkspec 0.42.0
cargo set-version -p tor-llcrypto 0.42.0
cargo set-version -p tor-log-ratelim 0.42.0
cargo set-version -p tor-memquota 0.42.0
cargo set-version -p tor-memquota-cost 0.42.0
cargo set-version -p tor-netdir 0.42.0
cargo set-version -p tor-netdoc 0.42.0
cargo set-version -p tor-persist 0.42.0
cargo set-version -p tor-proto 0.42.0
cargo set-version -p tor-protover 0.42.0
cargo set-version -p tor-ptmgr 0.42.0
cargo set-version -p tor-relay-crypto 0.42.0
cargo set-version -p tor-relay-selection 0.42.0
cargo set-version -p tor-rpcbase 0.42.0
cargo set-version -p tor-rpc-connect 0.42.0
cargo set-version -p tor-rtcompat 0.42.0
cargo set-version -p tor-rtmock 0.42.0
cargo set-version -p tor-socksproto 0.42.0
cargo set-version -p tor-units 0.42.0
</content>
</entry>
<entry>
<title>tor-netdoc: Apply deferred rustfmt churn</title>
<updated>2026-04-29T17:48:03Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2026-04-29T17:24:16Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=1153b25ffc98ec8cddf61fc5c03f0a896587bce7'/>
<id>urn:sha1:1153b25ffc98ec8cddf61fc5c03f0a896587bce7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>tor-netdoc: Abolish poc's netstatus signature type</title>
<updated>2026-04-29T17:48:03Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2026-04-29T16:15:34Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=f33cdcf44c4654e7043f7e93baa05eb7318ab005'/>
<id>urn:sha1:f33cdcf44c4654e7043f7e93baa05eb7318ab005</id>
<content type='text'>
Use prod's Signature instead.

This gets rid of:

 * The old parsing code.  We have a new approach based on
   ItemValueParseable, KeywordOrString and and DigestAlgoInSignature.

 * The duplicate DirectorySignaturesHashesAccu and its temporary conversions.

poc's verify_timeless function needs a little adjustment for the new
struct layout.
</content>
</entry>
<entry>
<title>tor-dirserver: Add tor-checkable as dev-dependency</title>
<updated>2026-04-28T16:29:41Z</updated>
<author>
<name>Clara Engler</name>
<email>cve@cve.cx</email>
</author>
<published>2026-04-23T15:33:08Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=41a36fa12441cc3d515828f5617a4acc46a28c80'/>
<id>urn:sha1:41a36fa12441cc3d515828f5617a4acc46a28c80</id>
<content type='text'>
This is required to do some signature validation on legacy types in an
upcoming commit.
</content>
</entry>
<entry>
<title>tor-dirserver: Fix for missing_extra_infos() for NULL</title>
<updated>2026-04-28T16:27:56Z</updated>
<author>
<name>Clara Engler</name>
<email>cve@cve.cx</email>
</author>
<published>2026-04-28T08:09:13Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=67c4e02d595fed7ce3afc06e43f2577244b67ff4'/>
<id>urn:sha1:67c4e02d595fed7ce3afc06e43f2577244b67ff4</id>
<content type='text'>
If extra-infos is set to NULL, which might be the case for micro
descriptors or even router descriptors because the field is optional
there, this SQL query fails because it cannot LEFT JOIN
server.extra_unsigned_sha1 when this field is NULL.

To fix this, we simply add an additional clause to the WHERE statement
that filters such rows out.
</content>
</entry>
<entry>
<title>tor-dirserver: Make fingerprint optional in router_descriptor</title>
<updated>2026-04-28T16:27:44Z</updated>
<author>
<name>Clara Engler</name>
<email>cve@cve.cx</email>
</author>
<published>2026-04-23T15:30:35Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=86f129e1ae01cac52912d3fbb1a0fef320d52ce7'/>
<id>urn:sha1:86f129e1ae01cac52912d3fbb1a0fef320d52ce7</id>
<content type='text'>
This commit changes the schema to make the fingerprint optional.
Reason for this is, that microdescriptors are also stored in this table
and microdescriptors only contain an OPTIONAL onion-key, meaning it may
not always be possible to determine this value from a microdescriptor,
thereby making it silly to require it here.
</content>
</entry>
<entry>
<title>tor-dirserver: Make use of only one descriptor hash in missing selection</title>
<updated>2026-04-27T15:46:58Z</updated>
<author>
<name>Clara Engler</name>
<email>cve@cve.cx</email>
</author>
<published>2026-04-14T09:01:32Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=6b26ebb430da64239c1698798b2ee1543129cba7'/>
<id>urn:sha1:6b26ebb430da64239c1698798b2ee1543129cba7</id>
<content type='text'>
This commit makes use of the presence of only one descriptor hash inside
consensus_router_descriptor_member by adding a respective AND clause to
the select statements of missing descriptors to only select the rows
with a non-null SHA-1 (or SHA-2 for the sake of microdescs) in the
consensus_router_descriptor_member table.

This is defensive programming and should not be required in practice
because the docid as well as the "XOR" CHECK should already ensure that
this value is always non-NULL.  However, if it still happens and slips
through, the statement would return NULL rows, which is not what we
want and was previously prevented by ensuring this field was never NULL
in the first place.
</content>
</entry>
</feed>
