|
@@ -1232,10 +1232,9 @@ void circuit_expire_old_circuits(void) {
|
|
|
if (circ->timestamp_dirty &&
|
|
|
circ->timestamp_dirty + options.NewCircuitPeriod < now &&
|
|
|
!circ->p_conn && /* we're the origin */
|
|
|
- !circ->p_streams && /* AP connections */
|
|
|
- !circ->n_streams /* exit connections */ ) {
|
|
|
- log_fn(LOG_DEBUG,"Closing n_circ_id %d (dirty %d secs ago)",circ->n_circ_id,
|
|
|
- (int)(now - circ->timestamp_dirty));
|
|
|
+ !circ->p_streams /* nothing attached */ ) {
|
|
|
+ log_fn(LOG_DEBUG,"Closing n_circ_id %d (dirty %d secs ago, purp %d)",circ->n_circ_id,
|
|
|
+ (int)(now - circ->timestamp_dirty), circ->purpose);
|
|
|
circuit_mark_for_close(circ);
|
|
|
} else if (!circ->timestamp_dirty && CIRCUIT_IS_ORIGIN(circ) &&
|
|
|
circ->state == CIRCUIT_STATE_OPEN &&
|
|
@@ -1250,6 +1249,8 @@ void circuit_expire_old_circuits(void) {
|
|
|
}
|
|
|
for (i = MAX_UNUSED_OPEN_CIRCUITS; i < smartlist_len(unused_open_circs); ++i) {
|
|
|
circuit_t *circ = smartlist_get(unused_open_circs, i);
|
|
|
+ log_fn(LOG_DEBUG,"Expiring excess clean circ (n_circ_id %d, purp %d)",
|
|
|
+ circ->n_circ_id, circ->purpose);
|
|
|
circuit_mark_for_close(circ);
|
|
|
}
|
|
|
smartlist_free(unused_open_circs);
|