summaryrefslogtreecommitdiff
path: root/src/or/dirserv.c
diff options
context:
space:
mode:
authorRoger Dingledine <arma@torproject.org>2007-03-16 06:55:09 +0000
committerRoger Dingledine <arma@torproject.org>2007-03-16 06:55:09 +0000
commit4813ff04e8d21b2545c2bbd0ca913ad0a1bd8e21 (patch)
tree122aca72b66e92f56ff624e833661895c67cb1c2 /src/or/dirserv.c
parent75dc5495e211ab1662e9189521df63c21f409bfd (diff)
downloadtor-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.c4
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;