From cb584627a42636a0b38646ccc6d6c90abd490c37 Mon Sep 17 00:00:00 2001 From: Roger Dingledine Date: Sat, 5 Apr 2003 19:04:47 +0000 Subject: [PATCH] begin cells are now address:port, not address,port (breaks backward compatibility) svn:r222 --- src/or/connection_ap.c | 2 +- src/or/connection_exit.c | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/or/connection_ap.c b/src/or/connection_ap.c index caafef2400..787f77943b 100644 --- a/src/or/connection_ap.c +++ b/src/or/connection_ap.c @@ -368,7 +368,7 @@ int ap_handshake_send_begin(connection_t *ap_conn, circuit_t *circ) { /* FIXME check for collisions */ ap_conn->topic_id = ntohs(*(uint16_t *)(cell.payload+2)); cell.payload[0] = TOPIC_COMMAND_BEGIN; - snprintf(cell.payload+4, CELL_PAYLOAD_SIZE-4, "%s,%d", ap_conn->dest_addr, ap_conn->dest_port); + snprintf(cell.payload+4, CELL_PAYLOAD_SIZE-4, "%s:%d", ap_conn->dest_addr, ap_conn->dest_port); cell.length = strlen(cell.payload+TOPIC_HEADER_SIZE)+1+TOPIC_HEADER_SIZE; log(LOG_DEBUG,"ap_handshake_send_begin(): Sending data cell to begin topic %d.", ap_conn->topic_id); if(circuit_deliver_data_cell_from_edge(&cell, circ, EDGE_AP) < 0) { diff --git a/src/or/connection_exit.c b/src/or/connection_exit.c index e974ead1b9..2c2ffe1b66 100644 --- a/src/or/connection_exit.c +++ b/src/or/connection_exit.c @@ -135,20 +135,20 @@ int connection_exit_send_connected(connection_t *conn) { int connection_exit_begin_conn(cell_t *cell, circuit_t *circ) { connection_t *n_conn; - char *comma; + char *colon; if(!memchr(cell->payload + TOPIC_HEADER_SIZE,0,cell->length - TOPIC_HEADER_SIZE)) { log(LOG_WARNING,"connection_exit_begin_conn(): topic begin cell has no \\0. Dropping."); return 0; } - comma = strchr(cell->payload + TOPIC_HEADER_SIZE, ','); - if(!comma) { - log(LOG_WARNING,"connection_exit_begin_conn(): topic begin cell has no comma. Dropping."); + colon = strchr(cell->payload + TOPIC_HEADER_SIZE, ':'); + if(!colon) { + log(LOG_WARNING,"connection_exit_begin_conn(): topic begin cell has no colon. Dropping."); return 0; } - *comma = 0; + *colon = 0; - if(!atoi(comma+1)) { /* bad port */ + if(!atoi(colon+1)) { /* bad port */ log(LOG_DEBUG,"connection_exit_begin_conn(): topic begin cell has invalid port. Dropping."); return 0; } @@ -164,7 +164,7 @@ int connection_exit_begin_conn(cell_t *cell, circuit_t *circ) { n_conn->topic_id = ntohs(*(uint16_t *)(cell->payload+2)); n_conn->address = strdup(cell->payload + TOPIC_HEADER_SIZE); - n_conn->port = atoi(comma+1); + n_conn->port = atoi(colon+1); n_conn->state = EXIT_CONN_STATE_RESOLVING; n_conn->receiver_bucket = -1; /* edge connections don't do receiver buckets */ n_conn->bandwidth = -1;