[tor-commits] [tor/master] Fix to 9841 fix: setting a token to NULL should clear it

nickm at torproject.org nickm at torproject.org
Tue Apr 8 16:07:50 UTC 2014


commit 09dbcf3b82c6db76024a5345b98f34028b40c30c
Author: Nick Mathewson <nickm at torproject.org>
Date:   Fri Apr 4 12:01:49 2014 -0400

    Fix to 9841 fix: setting a token to NULL should clear it
    
    Found by testing with chutney.  The old behavior was "fail an
    assertion", which obviously isn't optimal.
    
    Bugfix on 8b9a2cb68b290e550695124d7ef0511225b451d5; bug not in any
    released version.
---
 src/or/circuitlist.c |    5 +++++
 1 file changed, 5 insertions(+)

diff --git a/src/or/circuitlist.c b/src/or/circuitlist.c
index 8ab673c..be71fdd 100644
--- a/src/or/circuitlist.c
+++ b/src/or/circuitlist.c
@@ -1233,6 +1233,11 @@ circuit_set_rend_token(or_circuit_t *circ, int is_rend_circ,
   if (circ->rendinfo)
     circuit_clear_rend_token(circ);
 
+  if (token == NULL) {
+    /* We were only trying to remove this token, not set a new one. */
+    return;
+  }
+
   found_circ = digestmap_get(map, (const char *)token);
   if (found_circ) {
     tor_assert(found_circ != circ);





More information about the tor-commits mailing list