[or-cvs] [tor/maint-0.2.1] Finish up the 0.2.1 version of the bug 957 fix.

Nick Mathewson nickm at seul.org
Fri May 22 15:53:34 UTC 2009


Author: Nick Mathewson <nickm at torproject.org>
Date: Fri, 22 May 2009 11:47:09 -0400
Subject: Finish up the 0.2.1 version of the bug 957 fix.
Commit: 1d002a25a261237e4ad1e3d9f3701670be853e6f

Basically, all this means is downgrading our warning messages to debug
messages, since the bug workaround code here is adequate to stop the
bug.
---
 ChangeLog         |    7 +++++--
 src/or/eventdns.c |   14 +++++++-------
 2 files changed, 12 insertions(+), 9 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index e3febcf..917ec9a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,9 @@
 Changes in version 0.2.1.15??? - ????-??-??
+  o Major bugfixes:
+    - Fix a timing-dependent, allocator-dependent, DNS-related crash bug
+      that would occur on some exit nodes when DNS failures and timeouts
+      occurred in certain patterns.  Fix for bug 957.
+
   o Minor bugfixes:
     - Actually return -1 in the error case for read_bandwidth_usage().
       Harmless bug, since we currently don't care about the return value
@@ -25,8 +30,6 @@ Changes in version 0.2.1.15??? - ????-??-??
       descriptor as never-downloadable.  Bugfix on 0.2.1.9-alpha.
     - Fix a memory leak when v3 directory authorities load their keys
       and cert from disk. Bugfix on 0.2.0.1-alpha.
-    - Add a test and fix for a possible cause of bug 957.  If it's
-      the real cause, it should display some warning messages.
 
 
 Changes in version 0.2.1.14-rc - 2009-04-12
diff --git a/src/or/eventdns.c b/src/or/eventdns.c
index 4958b9a..cd13303 100644
--- a/src/or/eventdns.c
+++ b/src/or/eventdns.c
@@ -474,7 +474,7 @@ sockaddr_eq(const struct sockaddr *sa1, const struct sockaddr *sa2,
 	return 1;
 }
 
-/* for debugging bug 929.  XXXX021 */
+/* for debugging bug 929.  XXXX022 */
 static int
 _add_timeout_event(u16 *lineno, struct event *ev, struct timeval *to)
 {
@@ -484,13 +484,13 @@ _add_timeout_event(u16 *lineno, struct event *ev, struct timeval *to)
 #define add_timeout_event(s, to) \
 	(_add_timeout_event(&(s)->timeout_event_deleted, &(s)->timeout_event, (to)))
 
-/* for debugging bug 929.  XXXX021 */
+/* for debugging bug 929.  XXXX022 */
 static int
 _del_timeout_event(u16 *lineno, struct event *ev, int line)
 {
 	if (*lineno) {
-		log(EVDNS_LOG_WARN,
-			"BUG: Duplicate timeout event_del from line %d: first call "
+		log(EVDNS_LOG_DEBUG,
+			"Duplicate timeout event_del from line %d: first call "
 			"was at %d.", line, (int)*lineno);
 		return 0;
 	} else {
@@ -501,13 +501,13 @@ _del_timeout_event(u16 *lineno, struct event *ev, int line)
 #define del_timeout_event(s)											\
 	(_del_timeout_event(&(s)->timeout_event_deleted, &(s)->timeout_event, \
 						__LINE__))
-/* For debugging bug 929/957. XXXX021 */
+/* For debugging bug 929/957. XXXX022 */
 static int
 _del_timeout_event_if_set(u16 *lineno, struct event *ev, int line)
 {
 	if (*lineno == 0) {
-		log(EVDNS_LOG_WARN,
-			"BUG: Event that I thought was non-added as of line %d "
+		log(EVDNS_LOG_DEBUG,
+			"Event that I thought was non-added as of line %d "
 			"was actually added on line %d",
 			line, (int)*lineno);
 		*lineno = line;
-- 
1.5.6.5



More information about the tor-commits mailing list