diff options
author | Nick Mathewson <nickm@torproject.org> | 2011-09-28 10:31:56 -0400 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2011-10-10 23:14:30 -0400 |
commit | 7aadae606b51460810163cac0a5e695ebbefa3b9 (patch) | |
tree | ee684d617ae83b3192ae003468ef0410759a6de5 /src/or/command.c | |
parent | 41b250d7ea6b2d635d0e0b70cf7e1d5c1ed9ca4f (diff) | |
download | tor-7aadae606b51460810163cac0a5e695ebbefa3b9.tar.gz tor-7aadae606b51460810163cac0a5e695ebbefa3b9.zip |
Make sure we stop putting cells into our hash at the right time.
Diffstat (limited to 'src/or/command.c')
-rw-r--r-- | src/or/command.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/or/command.c b/src/or/command.c index 4da5f86009..d63b9dd352 100644 --- a/src/or/command.c +++ b/src/or/command.c @@ -243,7 +243,8 @@ command_process_var_cell(var_cell_t *cell, or_connection_t *conn) return; /*XXXX023 log*/ break; case OR_CONN_STATE_OR_HANDSHAKING_V3: - or_handshake_state_record_var_cell(conn->handshake_state, cell, 1); + if (cell->command != CELL_AUTHENTICATE) + or_handshake_state_record_var_cell(conn->handshake_state, cell, 1); break; /* Everything is allowed */ case OR_CONN_STATE_OPEN: if (conn->link_proto < 3) @@ -1131,6 +1132,7 @@ command_process_authenticate_cell(var_cell_t *cell, or_connection_t *conn) /* Okay, we are authenticated. */ conn->handshake_state->received_authenticate = 1; conn->handshake_state->authenticated = 1; + conn->handshake_state->digest_received_data = 0; { crypto_pk_env_t *identity_rcvd = tor_tls_cert_get_key(conn->handshake_state->id_cert); |