diff options
author | teor (Tim Wilson-Brown) <teor2345@gmail.com> | 2016-07-07 16:04:26 +1000 |
---|---|---|
committer | teor <teor2345@gmail.com> | 2016-08-24 10:32:10 +1000 |
commit | febd4ab0e5304a129fb2757949b9a452e7cce162 (patch) | |
tree | 4512d985760836c09a052d628f174bffca5b6b13 /src/or/onion.c | |
parent | 579a80d4ae54ec03fd9b02c4a125b2943770c85d (diff) | |
download | tor-febd4ab0e5304a129fb2757949b9a452e7cce162.tar.gz tor-febd4ab0e5304a129fb2757949b9a452e7cce162.zip |
Client & HS make sure every hop in every non-HS path supports ntor
When a client connects to an intro point not in the client's consensus,
or a hidden service connects to a rend point not in the hidden service's
consensus, we are stuck with using TAP, because there is no ntor link
specifier.
Diffstat (limited to 'src/or/onion.c')
-rw-r--r-- | src/or/onion.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/or/onion.c b/src/or/onion.c index 5495074a83..8a566af766 100644 --- a/src/or/onion.c +++ b/src/or/onion.c @@ -11,6 +11,7 @@ **/ #include "or.h" +#include "circuitbuild.h" #include "circuitlist.h" #include "config.h" #include "cpuworker.h" @@ -438,8 +439,7 @@ onion_skin_create(int type, r = CREATE_FAST_LEN; break; case ONION_HANDSHAKE_TYPE_NTOR: - if (tor_mem_is_zero((const char*)node->curve25519_onion_key.public_key, - CURVE25519_PUBKEY_LEN)) + if (!extend_info_supports_ntor(node)) return -1; if (onion_skin_ntor_create((const uint8_t*)node->identity_digest, &node->curve25519_onion_key, |