diff options
author | Roger Dingledine <arma@torproject.org> | 2007-03-16 06:55:09 +0000 |
---|---|---|
committer | Roger Dingledine <arma@torproject.org> | 2007-03-16 06:55:09 +0000 |
commit | 4813ff04e8d21b2545c2bbd0ca913ad0a1bd8e21 (patch) | |
tree | 122aca72b66e92f56ff624e833661895c67cb1c2 /src/or/dirserv.c | |
parent | 75dc5495e211ab1662e9189521df63c21f409bfd (diff) | |
download | tor-4813ff04e8d21b2545c2bbd0ca913ad0a1bd8e21.tar.gz tor-4813ff04e8d21b2545c2bbd0ca913ad0a1bd8e21.zip |
Fix an infinite loop introduced in 0.1.2.7-alpha when we serve
directory information requested inside Tor connections (i.e. via
begin_dir cells). It only triggered when the same connection was
serving other data at the same time. Reported by seeess.
Backport candidate.
svn:r9841
Diffstat (limited to 'src/or/dirserv.c')
-rw-r--r-- | src/or/dirserv.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/or/dirserv.c b/src/or/dirserv.c index 3e7dad01c4..483c6e4c3a 100644 --- a/src/or/dirserv.c +++ b/src/or/dirserv.c @@ -2093,8 +2093,8 @@ connection_dirserv_stop_blocking_all_on_or_conn(or_connection_t *or_conn) { dir_connection_t *dir_conn, *next; - while (or_conn->blocked_dir_connections) { - dir_conn = or_conn->blocked_dir_connections; + dir_conn=or_conn->blocked_dir_connections; + while (dir_conn) { next = dir_conn->next_blocked_on_same_or_conn; dir_conn->is_blocked_on_or_conn = 0; |