summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoger Dingledine <arma@torproject.org>2005-09-12 22:05:17 +0000
committerRoger Dingledine <arma@torproject.org>2005-09-12 22:05:17 +0000
commit8b0d37096bd15eff5065b30f1f288cb7464a6f08 (patch)
treeff269e4a4c829cb7e6214e9085ec42d935289945
parent569efe61c0ccde8277cc378d03a73def45225ad9 (diff)
downloadtor-8b0d37096bd15eff5065b30f1f288cb7464a6f08.tar.gz
tor-8b0d37096bd15eff5065b30f1f288cb7464a6f08.zip
when the user asked for a rendezvous port that the hidden service
didn't want to provide, we were sending an IP address back along with the end cell. fortunately, it was zero. but stop that anyway. svn:r5022
-rw-r--r--src/or/connection_edge.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/or/connection_edge.c b/src/or/connection_edge.c
index 341fbc2d6c..44e1e570df 100644
--- a/src/or/connection_edge.c
+++ b/src/or/connection_edge.c
@@ -190,9 +190,8 @@ connection_edge_end(connection_t *conn, char reason, crypt_path_t *cpath_layer)
}
payload[0] = reason;
- if (reason == END_STREAM_REASON_EXITPOLICY) {
- /* this is safe even for rend circs, because they never fail
- * because of exitpolicy */
+ if (reason == END_STREAM_REASON_EXITPOLICY &&
+ !connection_edge_is_rendezvous_stream(conn)) {
set_uint32(payload+1, htonl(conn->addr));
set_uint32(payload+5, htonl(MAX_DNS_ENTRY_AGE)); /* XXXXfill with a real TTL*/
payload_len += 8;