]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
fix a bug in dns.c, note but don't fix another one
authorRoger Dingledine <arma@torproject.org>
Wed, 28 Apr 2004 19:55:20 +0000 (19:55 +0000)
committerRoger Dingledine <arma@torproject.org>
Wed, 28 Apr 2004 19:55:20 +0000 (19:55 +0000)
svn:r1735

src/or/connection_edge.c
src/or/dns.c

index 46e94acc8ba08896f7ae872dc19d711181da021f..3eb4d9ba6e671ca93f4b967ed8fca50e2023a51f 100644 (file)
@@ -834,6 +834,7 @@ circuit_get_open_circ_or_launch(connection_t *conn,
         log_fn(LOG_WARN,"Advertised intro point '%s' is not known. Closing.", exitname);
         return -1;
       }
+      /* XXX if we failed, then refetch the descriptor */
       log_fn(LOG_INFO,"Chose %s as intro point for %s.", exitname, conn->rend_query);
     }
 
index 6d7f36fc8af9203dde1ab2e5550c31cd4a15eec7..29ae69ced387f6f9b70363c5831c53823ecf2a95 100644 (file)
@@ -474,6 +474,7 @@ int dnsworker_main(void *data) {
     }
     address[address_len] = 0; /* null terminate it */
 
+    /* XXX isn't this non-aligned uint32 going to cause problems? */
     switch (tor_lookup_hostname(address, (uint32_t*)answer+1)) {
       case 1:
         log_fn(LOG_INFO,"Could not resolve dest addr %s (transient).",address);
@@ -482,9 +483,11 @@ int dnsworker_main(void *data) {
       case -1:
         log_fn(LOG_INFO,"Could not resolve dest addr %s (permanent).",address);
         answer[0] = DNS_RESOLVE_FAILED_PERMANENT;
+        break;
       case 0:
         log_fn(LOG_INFO,"Resolved address '%s'.",address);
         answer[0] = DNS_RESOLVE_SUCCEEDED;
+        break;
     }
     if(write_all(fd, answer, 5, 1) != 5) {
       log_fn(LOG_ERR,"writing answer failed. Child exiting.");