make 'connected' cells include the resolved IP

svn:r1143
This commit is contained in:
Roger Dingledine 2004-02-27 04:52:02 +00:00
parent 195dfd35a8
commit 737b2a0bf1
2 changed files with 5 additions and 3 deletions

View file

@ -12,9 +12,11 @@ ARMA - arma claims
X Abandoned X Abandoned
Bugs: 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 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. 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. 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. o Sometimes it picks a middleman node as the exit for a circuit.

View file

@ -426,7 +426,7 @@ int connection_edge_finished_flushing(connection_t *conn) {
/* deliver a 'connected' relay cell back through the circuit. */ /* deliver a 'connected' relay cell back through the circuit. */
*(uint32_t*)connected_payload = htonl(conn->addr); *(uint32_t*)connected_payload = htonl(conn->addr);
if(connection_edge_send_command(conn, circuit_get_by_conn(conn), 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 */ return 0; /* circuit is closed, don't continue */
assert(conn->package_window > 0); assert(conn->package_window > 0);
return connection_edge_process_inbuf(conn); /* in case the server has written anything */ return connection_edge_process_inbuf(conn); /* in case the server has written anything */