begin cells are now address:port, not address,port

(breaks backward compatibility)


svn:r222
This commit is contained in:
Roger Dingledine 2003-04-05 19:04:47 +00:00
parent 1ae95f66ed
commit cb584627a4
2 changed files with 8 additions and 8 deletions

View File

@ -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) {

View File

@ -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;