From 4f5192b2803c70601cda76c36b350f50a02124f0 Mon Sep 17 00:00:00 2001
From: Roger Dingledine <arma@torproject.org>
Date: Thu, 31 Mar 2005 07:46:59 +0000
Subject: [PATCH] ...and use it to make sure we only conclude reachability if
 we didn't initiate the conn.

svn:r3932
---
 src/or/circuitbuild.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/src/or/circuitbuild.c b/src/or/circuitbuild.c
index e60a7eef9a..b69f3a3703 100644
--- a/src/or/circuitbuild.c
+++ b/src/or/circuitbuild.c
@@ -774,9 +774,11 @@ int onionskin_answer(circuit_t *circ, unsigned char *payload, unsigned char *key
   connection_or_write_cell_to_buf(&cell, circ->p_conn);
   log_fn(LOG_DEBUG,"Finished sending 'created' cell.");
 
-  if (!is_local_IP(circ->p_conn->addr)) {
-    /* record that we could process create cells; presumably this means
-       that create cells can reach us too. */
+  if (!is_local_IP(circ->p_conn->addr) &&
+      tor_tls_is_server(circ->p_conn->tls)) {
+    /* record that we could process create cells from a non-local conn
+     * that we didn't initiate; presumably this means that create cells
+     * can reach us too. */
     router_orport_found_reachable();
   }
 
-- 
GitLab