mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2025-02-25 23:21:38 +01:00
Stop clearing the is_client flag on channel directly
This commit is contained in:
parent
66aff2d8f3
commit
d1e0e486e9
3 changed files with 16 additions and 1 deletions
|
@ -4096,6 +4096,20 @@ channel_mark_client(channel_t *chan)
|
||||||
chan->is_client = 1;
|
chan->is_client = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Clear the client flag
|
||||||
|
*
|
||||||
|
* Mark a channel as being _not_ from a client
|
||||||
|
*/
|
||||||
|
|
||||||
|
void
|
||||||
|
channel_clear_client(channel_t *chan)
|
||||||
|
{
|
||||||
|
tor_assert(chan);
|
||||||
|
|
||||||
|
chan->is_client = 0;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the canonical flag for a channel
|
* Get the canonical flag for a channel
|
||||||
*
|
*
|
||||||
|
|
|
@ -671,6 +671,7 @@ int channel_is_local(channel_t *chan);
|
||||||
int channel_is_incoming(channel_t *chan);
|
int channel_is_incoming(channel_t *chan);
|
||||||
int channel_is_outgoing(channel_t *chan);
|
int channel_is_outgoing(channel_t *chan);
|
||||||
void channel_mark_client(channel_t *chan);
|
void channel_mark_client(channel_t *chan);
|
||||||
|
void channel_clear_client(channel_t *chan);
|
||||||
int channel_matches_extend_info(channel_t *chan, extend_info_t *extend_info);
|
int channel_matches_extend_info(channel_t *chan, extend_info_t *extend_info);
|
||||||
int channel_matches_target_addr_for_extend(channel_t *chan,
|
int channel_matches_target_addr_for_extend(channel_t *chan,
|
||||||
const tor_addr_t *target);
|
const tor_addr_t *target);
|
||||||
|
|
|
@ -331,7 +331,7 @@ command_process_create_cell(cell_t *cell, channel_t *chan)
|
||||||
// Needed for chutney: Sometimes relays aren't in the consensus yet, and
|
// Needed for chutney: Sometimes relays aren't in the consensus yet, and
|
||||||
// get marked as clients. This resets their channels once they appear.
|
// get marked as clients. This resets their channels once they appear.
|
||||||
// Probably useful for normal operation wrt relay flapping, too.
|
// Probably useful for normal operation wrt relay flapping, too.
|
||||||
chan->is_client = 0;
|
channel_clear_client(chan);
|
||||||
} else {
|
} else {
|
||||||
channel_mark_client(chan);
|
channel_mark_client(chan);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue