From: Nick Mathewson Date: Mon, 26 Jan 2015 15:19:07 +0000 (-0500) Subject: Bail early in cpuworker_onion_handshake_replyfn if the circuit is marked X-Git-Tag: tor-0.2.6.3-alpha~109 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=a598d0f575afab3836a48c9efc9f59e2bd5beab1;p=thirdparty%2Ftor.git Bail early in cpuworker_onion_handshake_replyfn if the circuit is marked --- diff --git a/src/or/cpuworker.c b/src/or/cpuworker.c index 0785c671d9..3ddb37a262 100644 --- a/src/or/cpuworker.c +++ b/src/or/cpuworker.c @@ -347,6 +347,12 @@ cpuworker_onion_handshake_replyfn(void *work_) circ->workqueue_entry = NULL; + if (TO_CIRCUIT(circ)->marked_for_close) { + /* We already marked this circuit; we can't call it open. */ + log_debug(LD_OR,"circuit is already marked."); + goto done_processing; + } + if (rpl.success == 0) { log_debug(LD_OR, "decoding onionskin failed. "