summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoger Dingledine <arma@torproject.org>2004-02-27 04:52:02 +0000
committerRoger Dingledine <arma@torproject.org>2004-02-27 04:52:02 +0000
commit737b2a0bf14ce24b3a03a1b508e31f51679e5ec3 (patch)
treef8f8a46843d1cadd877f18ee09415c2a94cc0657
parent195dfd35a80685a1cc545a5a308a588bd2b12220 (diff)
downloadtor-737b2a0bf14ce24b3a03a1b508e31f51679e5ec3.tar.gz
tor-737b2a0bf14ce24b3a03a1b508e31f51679e5ec3.zip
make 'connected' cells include the resolved IP
svn:r1143
-rw-r--r--doc/TODO6
-rw-r--r--src/or/connection_edge.c2
2 files changed, 5 insertions, 3 deletions
diff --git a/doc/TODO b/doc/TODO
index 5f840d0c55..1918268804 100644
--- a/doc/TODO
+++ b/doc/TODO
@@ -12,9 +12,11 @@ ARMA - arma claims
X Abandoned
Bugs:
- - client-side dns cache doesn't appear to be getting populated
+ - should maybe make clients exit(1) when bad things happen?
+ e.g. clock skew.
+ o client-side dns cache doesn't appear to be getting populated
by 'connected' cells. In fact, the 'connected' cells don't even
- include the IP. Oops.
+ include the IP.
o When it can't resolve any dirservers, it is useless from then on.
We should make it reload the RouterFile if it has no dirservers.
o Sometimes it picks a middleman node as the exit for a circuit.
diff --git a/src/or/connection_edge.c b/src/or/connection_edge.c
index cb7b2c60bf..89d668a88f 100644
--- a/src/or/connection_edge.c
+++ b/src/or/connection_edge.c
@@ -426,7 +426,7 @@ int connection_edge_finished_flushing(connection_t *conn) {
/* deliver a 'connected' relay cell back through the circuit. */
*(uint32_t*)connected_payload = htonl(conn->addr);
if(connection_edge_send_command(conn, circuit_get_by_conn(conn),
- RELAY_COMMAND_CONNECTED, NULL, 0, NULL) < 0)
+ RELAY_COMMAND_CONNECTED, connected_payload, 4, NULL) < 0)
return 0; /* circuit is closed, don't continue */
assert(conn->package_window > 0);
return connection_edge_process_inbuf(conn); /* in case the server has written anything */