[tor-commits] [tor/master] Extract data from DESTROY cell _after_ protocol violation checks.

nickm at torproject.org nickm at torproject.org
Fri May 18 16:14:16 UTC 2012


commit 153b9892f056f2ffa4b1f4a5846ca329d6982805
Author: George Kadianakis <desnacked at riseup.net>
Date:   Fri May 18 15:22:03 2012 +0300

    Extract data from DESTROY cell _after_ protocol violation checks.
---
 src/or/command.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/src/or/command.c b/src/or/command.c
index fb281a7..ca3c341 100644
--- a/src/or/command.c
+++ b/src/or/command.c
@@ -591,7 +591,6 @@ command_process_destroy_cell(cell_t *cell, or_connection_t *conn)
   int reason;
 
   circ = circuit_get_by_circid_orconn(cell->circ_id, conn);
-  reason = (uint8_t)cell->payload[0];
   if (!circ) {
     log_info(LD_OR,"unknown circuit %d on connection from %s:%d. Dropping.",
              cell->circ_id, conn->_base.address, conn->_base.port);
@@ -599,6 +598,8 @@ command_process_destroy_cell(cell_t *cell, or_connection_t *conn)
   }
   log_debug(LD_OR,"Received for circID %d.",cell->circ_id);
 
+  reason = (uint8_t)cell->payload[0];
+
   if (!CIRCUIT_IS_ORIGIN(circ) &&
       cell->circ_id == TO_OR_CIRCUIT(circ)->p_circ_id) {
     /* the destroy came from behind */





More information about the tor-commits mailing list