Fix handling of ntor handshakes received via CREATE cells

Fixes bug 7959; bugfix on 0.2.4.8-alpha.
This commit is contained in:
Nick Mathewson 2013-01-15 00:41:09 -05:00
parent ebf30613ea
commit beca92c31b
2 changed files with 8 additions and 1 deletions

6
changes/bug7959 Normal file
View File

@ -0,0 +1,6 @@
o Major bugfixes:
- Fix backward compatibility logic when receiving an embedded ntor
handshake tunneled in a CREATE cell. This clears up the "Bug: couldn't
format CREATED cell" warning. Fix for bug 7959; bugfix on
0.2.4.8-alpha.

View File

@ -560,7 +560,8 @@ check_created_cell(const created_cell_t *cell)
{ {
switch (cell->cell_type) { switch (cell->cell_type) {
case CELL_CREATED: case CELL_CREATED:
if (cell->handshake_len != TAP_ONIONSKIN_REPLY_LEN) if (cell->handshake_len != TAP_ONIONSKIN_REPLY_LEN &&
cell->handshake_len != NTOR_REPLY_LEN)
return -1; return -1;
break; break;
case CELL_CREATED_FAST: case CELL_CREATED_FAST: