]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
be safe: if you got a resolvefailed end cell but you're not an AP, bail.
authorRoger Dingledine <arma@torproject.org>
Sun, 30 Jan 2005 21:46:42 +0000 (21:46 +0000)
committerRoger Dingledine <arma@torproject.org>
Sun, 30 Jan 2005 21:46:42 +0000 (21:46 +0000)
svn:r3469

src/or/relay.c

index 0a2042d6a3f9a812d65c1468e34c851727dd069c..39ef56caa29e7f7bd67add20c96fb150acc646a4 100644 (file)
@@ -538,6 +538,10 @@ connection_edge_process_relay_cell_not_open(
       log_fn(LOG_INFO,"Giving up on retrying (from exitpolicy); conn can't be handled.");
       /* else, conn will get closed below */
     } else if (rh->length && reason == END_STREAM_REASON_RESOLVEFAILED) {
+      if (conn->type != CONN_TYPE_AP) {
+        log_fn(LOG_WARN,"Got an end because of resolvefailed, but we're not an AP. Closing.");
+        return -1;
+      }
       if (client_dns_incr_failures(conn->socks_request->address)
           < MAX_RESOLVE_FAILURES) {
         /* We haven't retried too many times; reattach the connection. */