aboutsummaryrefslogtreecommitdiff
path: root/src/or/connection_or.c
diff options
context:
space:
mode:
authorRoger Dingledine <arma@torproject.org>2006-06-07 08:42:24 +0000
committerRoger Dingledine <arma@torproject.org>2006-06-07 08:42:24 +0000
commit741b11df454f4c7d77aacf58f05ee9a6af884474 (patch)
treef837e02e366de5e541f8fafdf3be24e9120208ec /src/or/connection_or.c
parent1e9b35aee33b9b5cb31debd76d7feec378b3d039 (diff)
downloadtor-741b11df454f4c7d77aacf58f05ee9a6af884474.tar.gz
tor-741b11df454f4c7d77aacf58f05ee9a6af884474.zip
put a bandaid in place so servers will have an easier time
believing that they're reachable. this may help resolve the servers-on-dynamic-ip-addresses problem. svn:r6561
Diffstat (limited to 'src/or/connection_or.c')
-rw-r--r--src/or/connection_or.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/or/connection_or.c b/src/or/connection_or.c
index 4dc4a53e92..a94afd9d03 100644
--- a/src/or/connection_or.c
+++ b/src/or/connection_or.c
@@ -686,6 +686,19 @@ connection_tls_finish_handshake(connection_t *conn)
#endif
connection_or_init_conn_from_address(conn,conn->addr,conn->port,
digest_rcvd);
+
+ /* Annotate that we received a TLS connection.
+ * (Todo: only actually consider ourselves reachable if there
+ * exists a testing circuit using conn.)
+ *
+ * We already consider ourselves reachable if we can ever process
+ * a create cell -- see onionskin_answer() in circuitbuild.c.
+ *
+ * The reason this bandaid is here is because there's a bug in
+ * Tor 0.1.1.x where middle hops don't always send their create
+ * cell; so some servers rarely find themselves reachable. */
+ if (!is_local_IP(conn->addr))
+ router_orport_found_reachable();
}
if (!server_mode(get_options())) { /* If I'm an OP... */