[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

[or-cvs] r8446: Allow resolve requests to non-exits when they are specifical (in tor/trunk: . src/or)



Author: nickm
Date: 2006-09-21 17:49:36 -0400 (Thu, 21 Sep 2006)
New Revision: 8446

Modified:
   tor/trunk/
   tor/trunk/ChangeLog
   tor/trunk/src/or/circuituse.c
Log:
 r8881@Kushana:  nickm | 2006-09-21 17:27:59 -0400
 Allow resolve requests to non-exits when they are specifically requested (via resolve foo.bar.exit).



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

Modified: tor/trunk/ChangeLog
===================================================================
--- tor/trunk/ChangeLog	2006-09-21 21:49:15 UTC (rev 8445)
+++ tor/trunk/ChangeLog	2006-09-21 21:49:36 UTC (rev 8446)
@@ -11,8 +11,9 @@
     - Check for name servers (like Earthlink's) that hijack failing DNS
       requests and replace the 'no such server' answer with a "helpful"
       redirect to an advertising-driven search portal.  [Resolves bug 330.]
-    - When asked to resolve a hostname, don't use non-exit servers.  This
-      allows servers with broken DNS be useful to the network.
+    - When asked to resolve a hostname, don't use non-exit servers unless
+      requested to do so.  This allows servers with broken DNS be useful to
+      the network.
 
   o Security Fixes, minor
     - If a client asked for a server by name, and we didn't have a

Modified: tor/trunk/src/or/circuituse.c
===================================================================
--- tor/trunk/src/or/circuituse.c	2006-09-21 21:49:15 UTC (rev 8445)
+++ tor/trunk/src/or/circuituse.c	2006-09-21 21:49:36 UTC (rev 8446)
@@ -1225,7 +1225,8 @@
         }
         return -1;
       }
-      if (!connection_ap_can_use_exit(conn, router)) {
+      if (conn->_base.purpose != EXIT_PURPOSE_RESOLVE &&
+          !connection_ap_can_use_exit(conn, router)) {
         log_fn(opt ? LOG_INFO : LOG_WARN, LD_APP,
                "Requested exit point '%s' would refuse request. %s.",
                conn->chosen_exit_name, opt ? "Trying others" : "Closing");