diff options
author | Nick Mathewson <nickm@torproject.org> | 2014-06-11 11:57:56 -0400 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2014-06-11 11:57:56 -0400 |
commit | 3a2e25969fbb7bf38fcfafce676e7f56a1aca118 (patch) | |
tree | 39d1fc39c7a66bfe63a777c0b4d752a6dc56bcaa /src/or/circuitlist.c | |
parent | 7f3563058d6b9215fe93116a71db9573e790e017 (diff) | |
parent | bbb8f12ee4efd6f1c2bc8b34dfaf50e314863476 (diff) | |
download | tor-3a2e25969fbb7bf38fcfafce676e7f56a1aca118.tar.gz tor-3a2e25969fbb7bf38fcfafce676e7f56a1aca118.zip |
Merge remote-tracking branch 'public/ticket6799_024_v2_squashed'
Conflicts:
src/or/channel.c
src/or/circuitlist.c
src/or/connection.c
Conflicts involved removal of next_circ_id and addition of
unusable-circid tracking.
Diffstat (limited to 'src/or/circuitlist.c')
-rw-r--r-- | src/or/circuitlist.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/or/circuitlist.c b/src/or/circuitlist.c index 6238e08e1e..0140afcd77 100644 --- a/src/or/circuitlist.c +++ b/src/or/circuitlist.c @@ -328,10 +328,13 @@ circuit_set_p_circid_chan(or_circuit_t *or_circ, circid_t id, circuit_set_circid_chan_helper(circ, CELL_DIRECTION_IN, id, chan); - if (chan) + if (chan) { tor_assert(bool_eq(or_circ->p_chan_cells.n, or_circ->next_active_on_p_chan)); + chan->timestamp_last_had_circuits = approx_time(); + } + if (circ->p_delete_pending && old_chan) { channel_mark_circid_unusable(old_chan, old_id); circ->p_delete_pending = 0; @@ -350,9 +353,12 @@ circuit_set_n_circid_chan(circuit_t *circ, circid_t id, circuit_set_circid_chan_helper(circ, CELL_DIRECTION_OUT, id, chan); - if (chan) + if (chan) { tor_assert(bool_eq(circ->n_chan_cells.n, circ->next_active_on_n_chan)); + chan->timestamp_last_had_circuits = approx_time(); + } + if (circ->n_delete_pending && old_chan) { channel_mark_circid_unusable(old_chan, old_id); circ->n_delete_pending = 0; |