summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoger Dingledine <arma@torproject.org>2007-03-16 06:58:19 +0000
committerRoger Dingledine <arma@torproject.org>2007-03-16 06:58:19 +0000
commit4104f0a01478274d4ba8afd5013577e64e362471 (patch)
treef5b7d0278f0fd5bdcb1b3c70930b465a1789cce5
parent55aa184ac5da149943e8345e2ac66d2396b409cc (diff)
downloadtor-4104f0a01478274d4ba8afd5013577e64e362471.tar.gz
tor-4104f0a01478274d4ba8afd5013577e64e362471.zip
backport r9841.
phooey, there'll be another rc. svn:r9842
-rw-r--r--ChangeLog8
-rw-r--r--src/or/dirserv.c4
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;