[tor-commits] [tor/master] defensive programming to catch duplicate calls to connection_init_or_handshake_state

nickm at torproject.org nickm at torproject.org
Wed Jan 11 17:35:57 UTC 2012


commit ce703bd53edec2ee123dd747d6cc975a259c68f9
Author: Nick Mathewson <nickm at torproject.org>
Date:   Wed Oct 26 20:19:25 2011 -0400

    defensive programming to catch duplicate calls to connection_init_or_handshake_state
---
 src/or/connection_or.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/src/or/connection_or.c b/src/or/connection_or.c
index 7609138..76402a5 100644
--- a/src/or/connection_or.c
+++ b/src/or/connection_or.c
@@ -1583,6 +1583,10 @@ int
 connection_init_or_handshake_state(or_connection_t *conn, int started_here)
 {
   or_handshake_state_t *s;
+  if (conn->handshake_state) {
+    log_warn(LD_BUG, "Duplicate call to connection_init_or_handshake_state!");
+    return 0;
+  }
   s = conn->handshake_state = tor_malloc_zero(sizeof(or_handshake_state_t));
   s->started_here = started_here ? 1 : 0;
   s->digest_sent_data = 1;





More information about the tor-commits mailing list