From 4104f0a01478274d4ba8afd5013577e64e362471 Mon Sep 17 00:00:00 2001 From: Roger Dingledine Date: Fri, 16 Mar 2007 06:58:19 +0000 Subject: [PATCH] backport r9841. phooey, there'll be another rc. svn:r9842 --- ChangeLog | 8 ++++++++ src/or/dirserv.c | 4 ++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 01107f0908..20eb4b7574 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +Changes in version 0.1.2.12-rc - 2007-03-?? + o Major bugfixes: + - 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. + + Changes in version 0.1.2.11-rc - 2007-03-15 o Minor bugfixes (controller), reported by daejees: - Correct the control spec to match how the code actually responds diff --git a/src/or/dirserv.c b/src/or/dirserv.c index d55dc8e2f3..9186f7252a 100644 --- a/src/or/dirserv.c +++ b/src/or/dirserv.c @@ -2081,8 +2081,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;