commit e4689d840266088739eee39e9bef84e13c988ce9 Author: Nick Mathewson nickm@torproject.org Date: Mon Mar 28 16:51:00 2011 -0400
Note a slightly less likely way to violate ExcludeNodes --- src/or/circuitlist.c | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/src/or/circuitlist.c b/src/or/circuitlist.c index d11b457..42073fb 100644 --- a/src/or/circuitlist.c +++ b/src/or/circuitlist.c @@ -933,6 +933,11 @@ circuit_find_to_cannibalize(uint8_t purpose, extend_info_t *info, "capacity %d, internal %d", purpose, need_uptime, need_capacity, internal);
+ /* XXX022-1090 We should make sure that when we cannibalize a circuit, it + * contains no excluded nodes. (This is possible if StrictNodes is 0, and + * we thought we needed to use an excluded exit node for, say, a directory + * operation.) -NM */ + for (_circ=global_circuitlist; _circ; _circ = _circ->next) { if (CIRCUIT_IS_ORIGIN(_circ) && _circ->state == CIRCUIT_STATE_OPEN &&
tor-commits@lists.torproject.org