Disable encrypted directory connections when we don't have a server

descriptor for the destination. We'll get this working again in
the 0.2.0 branch.


svn:r9700
This commit is contained in:
Roger Dingledine
2007-03-01 04:26:30 +00:00
parent cbab0530c6
commit dba4e040fc
4 changed files with 9 additions and 3 deletions
+2 -1
View File
@@ -372,7 +372,8 @@ directory_initiate_command(const char *address, uint32_t addr,
{
dir_connection_t *conn;
or_options_t *options = get_options();
int want_to_tunnel = options->TunnelDirConns && supports_begindir;
int want_to_tunnel = options->TunnelDirConns && supports_begindir &&
router_get_by_digest(digest);
tor_assert(address);
tor_assert(addr);
+2
View File
@@ -561,6 +561,7 @@ router_pick_directory_server_impl(int requireother, int fascistfirewall,
if (fascistfirewall &&
prefer_tunnel &&
status->version_supports_begindir &&
router_get_by_digest(status->identity_digest) &&
fascist_firewall_allows_address_or(status->addr, status->or_port))
smartlist_add(is_trusted ? trusted_tunnel :
is_overloaded ? overloaded_tunnel : tunnel, status);
@@ -639,6 +640,7 @@ router_pick_trusteddirserver_impl(authority_type_t type,
if (fascistfirewall &&
prefer_tunnel &&
d->or_port &&
router_get_by_digest(d->digest) &&
fascist_firewall_allows_address_or(d->addr, d->or_port))
smartlist_add(is_overloaded ? overloaded_tunnel : tunnel,
&d->fake_status.status);