Browse Source

make dns resolves a lot faster
(but only enable this once we've found the bug)


svn:r1358

Roger Dingledine 20 years ago
parent
commit
4a5586b8e3
1 changed files with 12 additions and 2 deletions
  1. 12 2
      src/or/dns.c

+ 12 - 2
src/or/dns.c

@@ -109,11 +109,21 @@ int dns_resolve(connection_t *exitconn) {
   struct cached_resolve *resolve;
   struct cached_resolve search;
   struct pending_connection_t *pending_connection;
+  struct in_addr in;
   uint32_t now = time(NULL);
   assert_connection_ok(exitconn, 0);
 
-  /* first take this opportunity to see if there are any expired
-     resolves in the tree.*/
+#if 0 /* only enable this once we've found the conn-munging bug */
+  /* first check if exitconn->address is an IP. If so, we already
+   * know the answer. */
+  if (tor_inet_aton(exitconn->address, &in) != 0) {
+    exitconn->addr = ntohl(in.s_addr);
+    return 1;
+  }
+#endif
+
+  /* then take this opportunity to see if there are any expired
+   * resolves in the tree. */
   purge_expired_resolves(now);
 
   /* now check the tree to see if 'address' is already there. */