mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-10 21:23:58 +01:00
it was the second bug that was nailing us.
periodically we expire some circuits if we already have enough, and we were counting rend circs in that number. (the first one wasn't a bug after all) svn:r1729
This commit is contained in:
parent
8e8af6aaee
commit
505bb2f4a0
@ -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);
|
||||
|
Loading…
Reference in New Issue
Block a user