if (chan->u.listener.incoming_list) {
SMARTLIST_FOREACH_BEGIN(chan->u.listener.incoming_list,
channel_t *, qchan) {
- channel_request_close(qchan);
+ channel_mark_for_close(qchan);
} SMARTLIST_FOREACH_END(qchan);
smartlist_free(chan->u.listener.incoming_list);
}
/**
- * Request a channel be closed
+ * Mark a channel to be closed
*
* This function tries to close a channel_t; it will go into the CLOSING
* state, and eventually the lower layer should put it into the CLOSED or
*/
void
-channel_request_close(channel_t *chan)
+channel_mark_for_close(channel_t *chan)
{
tor_assert(chan != NULL);
tor_assert(chan->close != NULL);
* and allocate that again on close.
*/
channel_unregister(curr);
- channel_request_close(curr);
+ channel_mark_for_close(curr);
channel_force_free(curr);
} SMARTLIST_FOREACH_END(curr);
* and allocate that again on close.
*/
channel_unregister(curr);
- channel_request_close(curr);
+ channel_mark_for_close(curr);
channel_force_free(curr);
} SMARTLIST_FOREACH_END(curr);
if (!(curr->state == CHANNEL_STATE_CLOSING ||
curr->state == CHANNEL_STATE_CLOSED ||
curr->state == CHANNEL_STATE_ERROR)) {
- channel_request_close(curr);
+ channel_mark_for_close(curr);
}
channel_force_free(curr);
} SMARTLIST_FOREACH_END(curr);
/* Abstract channel operations */
-void channel_request_close(channel_t *chan);
+void channel_mark_for_close(channel_t *chan);
void channel_write_cell(channel_t *chan, cell_t *cell);
void channel_write_packed_cell(channel_t *chan, packed_cell_t *cell);
void channel_write_var_cell(channel_t *chan, var_cell_t *cell);
if (channel_tls_listener) {
base = TLS_CHAN_TO_BASE(channel_tls_listener);
channel_unregister(base);
- channel_request_close(base);
+ channel_mark_for_close(base);
channel_free(base);
channel_tls_listener = NULL;
}
if (chan->u.listener.incoming_list) {
SMARTLIST_FOREACH_BEGIN(chan->u.listener.incoming_list,
channel_t *, ichan) {
- channel_request_close(ichan);
+ channel_mark_for_close(ichan);
} SMARTLIST_FOREACH_END(ichan);
smartlist_free(chan->u.listener.incoming_list);