<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-circmgr/src/path/exitpath.rs, branch tor-dirmgr-v0.5.1</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=tor-dirmgr-v0.5.1</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=tor-dirmgr-v0.5.1'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2022-06-13T13:26:32Z</updated>
<entry>
<title>tor-netdir: testnet: Make construct_netdir infallible (rustfmt)</title>
<updated>2022-06-13T13:26:32Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2022-06-13T13:26:32Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=3e035927f20e88fa01f3b82649daa08551c4fda6'/>
<id>urn:sha1:3e035927f20e88fa01f3b82649daa08551c4fda6</id>
<content type='text'>
Run rustfmt.  Separate commit to make review of the substantive commit
easier.
</content>
</entry>
<entry>
<title>tor-netdir: testnet: Make construct_netdir infallible</title>
<updated>2022-06-13T13:25:45Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2022-06-13T13:25:45Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=7d223ac9e6c6d998d51a2d66baaeddea086dca37'/>
<id>urn:sha1:7d223ac9e6c6d998d51a2d66baaeddea086dca37</id>
<content type='text'>
This is a *lot* of unwraps.  The function takes no parameters and
is used only for testing.  It ought to be infallible.
</content>
</entry>
<entry>
<title>Use testing_rng() in tests throughout our crates.</title>
<updated>2022-06-02T18:56:42Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-06-02T17:31:43Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=967ea67b7dfc158f29cf449eb09bac89acdee46b'/>
<id>urn:sha1:967ea67b7dfc158f29cf449eb09bac89acdee46b</id>
<content type='text'>
This only affects uses of thread_rng(), and affects them all more or
less indiscriminately.  One test does not work with
ARTI_TEST_PRNG=deterministic; the next commit will fix it.
</content>
</entry>
<entry>
<title>Note a TODO in exitpath construction.</title>
<updated>2022-05-11T16:42:38Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-05-11T16:42:38Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=dd20ac45abc2b231c85914fd115728f64233515c'/>
<id>urn:sha1:dd20ac45abc2b231c85914fd115728f64233515c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>GuardUsage: restrictions: Use list builder</title>
<updated>2022-05-04T15:16:38Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2022-04-26T15:34:40Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=015db3d78d04969971d7254b1a839c5693cb2720'/>
<id>urn:sha1:015db3d78d04969971d7254b1a839c5693cb2720</id>
<content type='text'>
Although these do not appear in the config, it does have a builder.
It seems sensible to get rid of this ad-hoc list manipulation site,
and replace it with our standard list builder API.

define_list_builder_helper requires that the builder element type be
Deserialize.  Currently GuardUsageRestriction is a transparent, public
enum, so we aren't really exposing anything.

We could introduce GuardUsageRestrictionBuilder now, but
since it's not in the config and thereofore only in the public API of
the lower crates, we can definitely put that off.
</content>
</entry>
<entry>
<title>Fix grammar and typos</title>
<updated>2022-04-27T12:52:13Z</updated>
<author>
<name>Samanta Navarro</name>
<email>ferivoz@riseup.net</email>
</author>
<published>2022-04-23T11:51:44Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=c53818d496c910de4dfc4bc8d1f53e419fbf7408'/>
<id>urn:sha1:c53818d496c910de4dfc4bc8d1f53e419fbf7408</id>
<content type='text'>
</content>
</entry>
<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>circmgr: Use guard-manager's view of the fallbacks when possible.</title>
<updated>2022-03-30T14:39:09Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-03-25T20:56:26Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=ed6389acc7c872854984ae1ea38dbda6542f48cb'/>
<id>urn:sha1:ed6389acc7c872854984ae1ea38dbda6542f48cb</id>
<content type='text'>
If we're building a path with the guard manager involved, we now ask
the guard manager to pick our first hop no matter what.  We only
pick from the fallback list ourselves if we're using the API with no
guard manager.

This causes some follow-on changes where we have to remember an
OwnedChanTarget object in a TorPath we've built, and where we gain
the ability to say we're building a path "from nothing extra at
all."  Those are all internal to the crate, though.

Closes #220, by making sure that we use our guards to get a fresh
netdir (if we can) before falling back to any fallbacks, even if our
consensus is old.

Compilation should be fixed in the next commit.
</content>
</entry>
<entry>
<title>Turn FallbackList into a real type, and store one in GuardMgr.</title>
<updated>2022-03-30T14:39:06Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-03-25T20:44:12Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=9da43189f36b19681d10b78ef982c52c929b4573'/>
<id>urn:sha1:9da43189f36b19681d10b78ef982c52c929b4573</id>
<content type='text'>
The guard manager is responsible for handing out the first hops of
tor circuits, keeping track of their successes and failures, and
remembering their states.  Given that, it makes sense to store this
information here.  It is not yet used; I'll be fixing that in
upcoming commits.

Arguably, this information no longer belongs in the directory
manager: I've added a todo about moving it.

This commit will break compilation on its own in a couple of places;
subsequent commits will fix it up.
</content>
</entry>
<entry>
<title>Remove allow(clippy::disallowed_methods) lint.</title>
<updated>2022-03-30T12:55:58Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-03-30T12:55:58Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=700e491813f84d76446193aef7121a329b774717'/>
<id>urn:sha1:700e491813f84d76446193aef7121a329b774717</id>
<content type='text'>
</content>
</entry>
</feed>
