aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/or/circuit.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/or/circuit.c b/src/or/circuit.c
index 27a754591a..1b900b9c8b 100644
--- a/src/or/circuit.c
+++ b/src/or/circuit.c
@@ -470,6 +470,20 @@ void circuit_expire_building(time_t now) {
if(victim->timestamp_created + MIN_SECONDS_BEFORE_EXPIRING_CIRC > now)
continue; /* it's young still, don't mess with it */
+ /* some debug logs, to help track bugs */
+ if(victim->purpose >= CIRCUIT_PURPOSE_C_INTRODUCING &&
+ victim->purpose <= CIRCUIT_PURPOSE_C_REND_READY_INTRO_ACKED) {
+ if(victim->timestamp_dirty)
+ log_fn(LOG_DEBUG,"Considering %sopen purp %d to %s (clean).",
+ victim->state == CIRCUIT_STATE_OPEN ? "" : "non",
+ victim->purpose, victim->build_state->chosen_exit);
+ else
+ log_fn(LOG_DEBUG,"Considering %sopen purp %d to %s. %d secs since dirty.",
+ victim->state == CIRCUIT_STATE_OPEN ? "" : "non",
+ victim->purpose, victim->build_state->chosen_exit,
+ (int)(now - victim->timestamp_dirty));
+ }
+
/* if circ is !open, or if it's open but purpose is a non-finished
* intro or rend, then mark it for close */
if(victim->state != CIRCUIT_STATE_OPEN ||