[or-cvs] r8608: When eventdns is enabled, we can allow machines with thread- (tor/trunk)

nickm at seul.org nickm at seul.org
Fri Oct 6 15:29:53 UTC 2006


Author: nickm
Date: 2006-10-06 11:29:33 -0400 (Fri, 06 Oct 2006)
New Revision: 8608

Modified:
   tor/trunk/
   tor/trunk/ChangeLog
   tor/trunk/configure.in
Log:
 r9107 at Kushana:  nickm | 2006-10-06 02:14:02 -0400
 When eventdns is enabled, we can allow machines with thread-unsafe resolver functions to build multithreaded anyway.



Property changes on: tor/trunk
___________________________________________________________________
 svk:merge ticket from /tor/trunk [r9107] on c95137ef-5f19-0410-b913-86e773d04f59

Modified: tor/trunk/ChangeLog
===================================================================
--- tor/trunk/ChangeLog	2006-10-06 09:04:11 UTC (rev 8607)
+++ tor/trunk/ChangeLog	2006-10-06 15:29:33 UTC (rev 8608)
@@ -88,6 +88,9 @@
     - Just because your DirPort is open doesn't mean people should be
       able to remotely teach you about hidden service descriptors. Now
       only accept rendezvous posts if you've got HSAuthoritativeDir set.
+    - When eventdns is enabled, allow multithreaded builds on NetBSD and
+      OpenBSD.  (We had previously disabled threads on these platforms
+      because they didn't have working thread-safe resolver functions)
 
   o Major bugfixes, other:
     - Avoiding crashing on race condition in dns.c:

Modified: tor/trunk/configure.in
===================================================================
--- tor/trunk/configure.in	2006-10-06 09:04:11 UTC (rev 8607)
+++ tor/trunk/configure.in	2006-10-06 15:29:33 UTC (rev 8608)
@@ -19,6 +19,26 @@
     CFLAGS="$CFLAGS -g"
 fi])
 
+AC_ARG_ENABLE(eventdns,
+     AC_HELP_STRING(--enable-eventdns, enable asynchronous dns module),
+     [case "${enableval}" in
+        yes) eventdns=true ;;
+        no)  eventdns=false ;;
+        *) AC_MSG_ERROR(bad value for --enable-eventdns) ;;
+      esac], [eventdns=true])
+AM_CONDITIONAL(EVENTDNS, test x$eventdns = xtrue)
+if test x$eventdns = xtrue; then
+   AC_DEFINE([USE_EVENTDNS], 1, "Define to 1 if we'll be using eventdns.c")
+fi
+
+AC_ARG_ENABLE(transparent,
+     AC_HELP_STRING(--disable-transparent, disable transparent proxy support),
+     [case "${enableval}" in
+        yes) transparent=true ;;
+        no)  transparent=false ;;
+        *) AC_MSG_ERROR(bad value for --enable-transparent) ;;
+      esac], [transparent=true])
+
 AC_ARG_ENABLE(threads,
      AC_HELP_STRING(--disable-threads, disable multi-threading support))
 
@@ -27,9 +47,11 @@
     *-*-netbsd* | *-*-openbsd* )
      # Don't try multithreading on netbsd -- there is no threadsafe DNS
      # lookup function there.
-     AC_MSG_NOTICE([You are running OpenBSD or NetBSD; I am assuming that
+     if test x$eventdns != xtrue; then
+        AC_MSG_NOTICE([You are running OpenBSD or NetBSD; I am assuming that
 getaddrinfo is not threadsafe here, so I will disable threads.])
-     enable_threads="no";;
+        enable_threads="no"
+    fi ;;
     *-*-solaris* )
      # Don't try multithreading on solaris -- cpuworkers seem to lock.
      AC_MSG_NOTICE([You are running Solaris; Sometimes threading makes
@@ -44,26 +66,6 @@
   AC_DEFINE(ENABLE_THREADS, 1, [Defined if we will try to use multithreading])
 fi
 
-AC_ARG_ENABLE(eventdns,
-     AC_HELP_STRING(--enable-eventdns, enable asynchronous dns module),
-     [case "${enableval}" in
-        yes) eventdns=true ;;
-        no)  eventdns=false ;;
-        *) AC_MSG_ERROR(bad value for --enable-eventdns) ;;
-      esac], [eventdns=true])
-AM_CONDITIONAL(EVENTDNS, test x$eventdns = xtrue)
-if test x$eventdns = xtrue; then
-   AC_DEFINE([USE_EVENTDNS], 1, "Define to 1 if we'll be using eventdns.c")
-fi
-
-AC_ARG_ENABLE(transparent,
-     AC_HELP_STRING(--disable-transparent, disable transparent proxy support),
-     [case "${enableval}" in
-        yes) transparent=true ;;
-        no)  transparent=false ;;
-        *) AC_MSG_ERROR(bad value for --enable-transparent) ;;
-      esac], [transparent=true])
-
 case $host in
    *-*-solaris* )
      AC_DEFINE(_REENTRANT, 1, [Define on some platforms to activate x_r() functions in time.h])



More information about the tor-commits mailing list