<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-dirserver/src/mirror, branch main</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=main</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=main'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2026-08-05T18:57:30Z</updated>
<entry>
<title>tor-dirserver: fix tests on OpenBSD</title>
<updated>2026-08-05T18:57:30Z</updated>
<author>
<name>Andrew Kloet</name>
<email>andrew@kloet.net</email>
</author>
<published>2026-08-05T18:57:30Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=c40cd3ce49b6cd3774379cef25230b8b6b34ead9'/>
<id>urn:sha1:c40cd3ce49b6cd3774379cef25230b8b6b34ead9</id>
<content type='text'>
Use an IPv6 loopback address instead of the unspecified address when
creating test servers. The address returned by binding to [::]:0 is not
valid as a connection target on OpenBSD.
</content>
</entry>
<entry>
<title>tor-checkable: Rename `TimeBound::check_valid_*` to `if_valid_*`</title>
<updated>2026-07-23T10:13:34Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2026-07-20T16:40:18Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=ca37f30a097696ce2ebd4e9945a4bdaebe086b31'/>
<id>urn:sha1:ca37f30a097696ce2ebd4e9945a4bdaebe086b31</id>
<content type='text'>
I find these names confusing.  To my mind "check" implies a function
returning `Result&lt;(), _&gt;`.

Some other APIs use `unwrap` here but I think `if` is good.
</content>
</entry>
<entry>
<title>Much formatting churn for 2024 edition</title>
<updated>2026-07-22T12:25:53Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2026-07-22T12:25:53Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=e64263b921638ceb9c6adf3967fdde39e0a73db2'/>
<id>urn:sha1:e64263b921638ceb9c6adf3967fdde39e0a73db2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Use new TimeBound name throughout the tree</title>
<updated>2026-07-16T15:47:50Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2026-07-16T14:32:14Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=5f57903ab4a8c280acf8a5bec274c50d5f544fd6'/>
<id>urn:sha1:5f57903ab4a8c280acf8a5bec274c50d5f544fd6</id>
<content type='text'>
</content>
</entry>
<entry>
<title>tor-dirserver: Use "plain" consensus terminology rather than "ns" (fmt)</title>
<updated>2026-07-15T12:00:00Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2026-07-01T13:24:49Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=d4c2fdbf55286b973a46d39d2fd086cb3077332f'/>
<id>urn:sha1:d4c2fdbf55286b973a46d39d2fd086cb3077332f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>tor-dirserver: Use "plain" consensus terminology rather than "ns"</title>
<updated>2026-07-15T12:00:00Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2026-06-17T10:59:06Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=06f06ef39269bb4a9b561e4d0a0dd197754419c5'/>
<id>urn:sha1:06f06ef39269bb4a9b561e4d0a0dd197754419c5</id>
<content type='text'>
It doesn't make sense to say that a plain consensus is an "ns"
consensus, because "ns" stands for "network status" and all consensus
flavours, and indeed votes, are network statusus.

That's why tor-netdoc now uses "plain".  Use that here too.
</content>
</entry>
<entry>
<title>tor-dirserver: Use real consensus types, not poc (fmt)</title>
<updated>2026-07-15T12:00:00Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2026-06-17T11:03:33Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=56961bf0f8cc311fc3f314a81ea42d7718e2dcfb'/>
<id>urn:sha1:56961bf0f8cc311fc3f314a81ea42d7718e2dcfb</id>
<content type='text'>
</content>
</entry>
<entry>
<title>tor-dirserver: Use real consensus types, not poc</title>
<updated>2026-07-15T12:00:00Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2026-06-17T10:56:24Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=48215b4f8afce519c2558791cf30f41dc79ec462'/>
<id>urn:sha1:48215b4f8afce519c2558791cf30f41dc79ec462</id>
<content type='text'>
</content>
</entry>
<entry>
<title>tor-netdoc: authcert: use TimerangeBound for UnverifiedAuthCert::verify (fmt)</title>
<updated>2026-06-10T14:42:10Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2026-06-04T12:13:00Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=b6e5b60f02eb6c523a42ee3bc726b8dc6a8b94b0'/>
<id>urn:sha1:b6e5b60f02eb6c523a42ee3bc726b8dc6a8b94b0</id>
<content type='text'>
Precisely the result of rustfmt.
</content>
</entry>
<entry>
<title>tor-netdoc: authcert: use TimerangeBound for UnverifiedAuthCert::verify</title>
<updated>2026-06-10T14:42:10Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2026-06-04T12:10:18Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=ccac99474f98ef197a7dfc48930c2c67662e7991'/>
<id>urn:sha1:ccac99474f98ef197a7dfc48930c2c67662e7991</id>
<content type='text'>
TimerangeBound is reasonably nice and this will fit in better when we
want to verify votes.

Adjust the one non-test call site (in tor-dirserver) using .and_then.

In the tests:

 * Where we expected success, call .check_valid_at and add another .unwrap().
 * Where we expected signature verification failure, delete the time parameters.
 * Where we expected timeliness failure, call .check_valid_at and map the error.
 * With nontrivial tolerance, add calls to `extend_[pre_]tolerance`.
</content>
</entry>
</feed>
