Clients avoid choosing nodes that can't do ntor

If we know a node's version, and it can't do ntor, consider it not running.
If we have a node's descriptor, and it doesn't have a valid ntor key,
consider it not running.

Refactor these checks so they're consistent between authorities and clients.
This commit is contained in:
teor (Tim Wilson-Brown)
2016-07-07 12:58:47 +10:00
parent a76d528bec
commit 579a80d4ae
7 changed files with 82 additions and 10 deletions
+3
View File
@@ -7,4 +7,7 @@
instead, they check specifically for an ntor key.
- Clients avoid downloading a descriptor if the relay version is
too old to support ntor.
- Client code ignores nodes without ntor keys: they will not be
selected during circuit-building, or as guards, or as directory
mirrors, or as introduction or rendezvous points.
Fixes bug 19163; bugfix on 0.2.4.18-rc.