aboutsummaryrefslogtreecommitdiff
path: root/src/or/rendmid.c
diff options
context:
space:
mode:
authorRoger Dingledine <arma@torproject.org>2016-05-09 20:34:27 -0400
committerRoger Dingledine <arma@torproject.org>2016-05-09 20:34:27 -0400
commitbe0e1e9e2f69476da0b3e81abc3bbebed0838ad7 (patch)
tree04084e2bbebda8570926da58d0550587fd579adc /src/or/rendmid.c
parent6678dff38611bbbc35560ac47ce6b54a108fb6d0 (diff)
downloadtor-be0e1e9e2f69476da0b3e81abc3bbebed0838ad7.tar.gz
tor-be0e1e9e2f69476da0b3e81abc3bbebed0838ad7.zip
Stop being so strict about the payload length of "rendezvous1" cells
We used to be locked in to the "tap" handshake length, and now we can handle better handshakes like "ntor". Resolves ticket 18998. I checked that relay_send_command_from_edge() behaves fine when you hand it a payload with length 0. Clients behave fine too, since current clients remain strict about the required length in the rendezvous2 cells. (Clients will want to become less strict once they have an alternate format that they're willing to receive.)
Diffstat (limited to 'src/or/rendmid.c')
-rw-r--r--src/or/rendmid.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/or/rendmid.c b/src/or/rendmid.c
index a33ad92966..ca0ad7b0d4 100644
--- a/src/or/rendmid.c
+++ b/src/or/rendmid.c
@@ -309,7 +309,7 @@ rend_mid_rendezvous(or_circuit_t *circ, const uint8_t *request,
goto err;
}
- if (request_len != REND_COOKIE_LEN+DH_KEY_LEN+DIGEST_LEN) {
+ if (request_len < REND_COOKIE_LEN) {
log_fn(LOG_PROTOCOL_WARN, LD_PROTOCOL,
"Rejecting RENDEZVOUS1 cell with bad length (%d) on circuit %u.",
(int)request_len, (unsigned)circ->p_circ_id);