From: Nick Mathewson Date: Mon, 28 Mar 2011 20:51:00 +0000 (-0400) Subject: Note a slightly less likely way to violate ExcludeNodes X-Git-Tag: tor-0.2.2.25-alpha~13^2~21 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=e4689d840266088739eee39e9bef84e13c988ce9;p=thirdparty%2Ftor.git Note a slightly less likely way to violate ExcludeNodes --- diff --git a/src/or/circuitlist.c b/src/or/circuitlist.c index d11b457944..42073fb96e 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 &&