Loading src/or/circuit.c +5 −5 Original line number Diff line number Diff line Loading @@ -10,7 +10,7 @@ static int relay_crypt(circuit_t *circ, char *in, char cell_direction, crypt_path_t **layer_hint, char *recognized); static connection_t *relay_lookup_conn(circuit_t *circ, cell_t *cell, int cell_direction); static void circuit_free_cpath_node(crypt_path_t *victim); static circ_id_t get_unique_circ_id_by_conn(connection_t *conn, int circ_id_type); static uint16_t get_unique_circ_id_by_conn(connection_t *conn, int circ_id_type); unsigned long stats_n_relay_cells_relayed = 0; unsigned long stats_n_relay_cells_delivered = 0; Loading Loading @@ -56,7 +56,7 @@ void circuit_remove(circuit_t *circ) { } } circuit_t *circuit_new(circ_id_t p_circ_id, connection_t *p_conn) { circuit_t *circuit_new(uint16_t p_circ_id, connection_t *p_conn) { circuit_t *circ; circ = tor_malloc_zero(sizeof(circuit_t)); Loading Loading @@ -129,8 +129,8 @@ static void circuit_free_cpath_node(crypt_path_t *victim) { } /* return 0 if can't get a unique circ_id. */ static circ_id_t get_unique_circ_id_by_conn(connection_t *conn, int circ_id_type) { circ_id_t test_circ_id; static uint16_t get_unique_circ_id_by_conn(connection_t *conn, int circ_id_type) { uint16_t test_circ_id; int attempts=0; uint16_t high_bit; Loading @@ -156,7 +156,7 @@ static circ_id_t get_unique_circ_id_by_conn(connection_t *conn, int circ_id_type return test_circ_id; } circuit_t *circuit_get_by_circ_id_conn(circ_id_t circ_id, connection_t *conn) { circuit_t *circuit_get_by_circ_id_conn(uint16_t circ_id, connection_t *conn) { circuit_t *circ; connection_t *tmpconn; Loading src/or/connection.c +1 −1 Original line number Diff line number Diff line Loading @@ -647,7 +647,7 @@ int connection_state_is_open(connection_t *conn) { return 0; } int connection_send_destroy(circ_id_t circ_id, connection_t *conn) { int connection_send_destroy(uint16_t circ_id, connection_t *conn) { cell_t cell; assert(conn); Loading src/or/cpuworker.c +8 −8 Original line number Diff line number Diff line Loading @@ -30,18 +30,18 @@ int connection_cpu_finished_flushing(connection_t *conn) { return 0; } static void tag_pack(char *tag, uint32_t addr, uint16_t port, circ_id_t circ_id) { static void tag_pack(char *tag, uint32_t addr, uint16_t port, uint16_t circ_id) { *(uint32_t *)tag = addr; *(uint16_t *)(tag+4) = port; *(circ_id_t *)(tag+6) = circ_id; *(uint16_t *)(tag+6) = circ_id; } static void tag_unpack(char *tag, uint32_t *addr, uint16_t *port, circ_id_t *circ_id) { static void tag_unpack(char *tag, uint32_t *addr, uint16_t *port, uint16_t *circ_id) { struct in_addr in; *addr = *(uint32_t *)tag; *port = *(uint16_t *)(tag+4); *circ_id = *(circ_id_t *)(tag+6); *circ_id = *(uint16_t *)(tag+6); in.s_addr = htonl(*addr); log_fn(LOG_DEBUG,"onion was from %s:%d, circ_id %d.", inet_ntoa(in), *port, *circ_id); Loading @@ -51,7 +51,7 @@ int connection_cpu_process_inbuf(connection_t *conn) { unsigned char buf[LEN_ONION_RESPONSE]; uint32_t addr; uint16_t port; circ_id_t circ_id; uint16_t circ_id; connection_t *p_conn; circuit_t *circ; Loading src/or/or.h +8 −10 Original line number Diff line number Diff line Loading @@ -230,8 +230,6 @@ #define SOCKS4_NETWORK_LEN 8 typedef uint16_t circ_id_t; /* * Relay payload: * Relay command [1 byte] Loading Loading @@ -276,7 +274,7 @@ typedef uint16_t circ_id_t; /* cell definition */ typedef struct { circ_id_t circ_id; uint16_t circ_id; unsigned char command; unsigned char payload[CELL_PAYLOAD_SIZE]; } cell_t; Loading Loading @@ -331,7 +329,7 @@ struct connection_t { /* Used only by OR connections: */ tor_tls *tls; circ_id_t next_circ_id; /* Which circ_id do we try to use next on this connection? uint16_t next_circ_id; /* Which circ_id do we try to use next on this connection? * This is always in the range 0..1<<15-1.*/ /* bandwidth and receiver_bucket only used by ORs in OPEN state: */ Loading Loading @@ -450,8 +448,8 @@ struct circuit_t { int package_window; int deliver_window; circ_id_t p_circ_id; /* circuit identifiers */ circ_id_t n_circ_id; uint16_t p_circ_id; /* circuit identifiers */ uint16_t n_circ_id; crypto_cipher_env_t *p_crypto; /* used only for intermediate hops */ crypto_cipher_env_t *n_crypto; Loading Loading @@ -554,11 +552,11 @@ int fetch_from_buf_socks(buf_t *buf, socks_request_t *req); void circuit_add(circuit_t *circ); void circuit_remove(circuit_t *circ); circuit_t *circuit_new(circ_id_t p_circ_id, connection_t *p_conn); circuit_t *circuit_new(uint16_t p_circ_id, connection_t *p_conn); void circuit_free(circuit_t *circ); void circuit_free_cpath(crypt_path_t *cpath); circuit_t *circuit_get_by_circ_id_conn(circ_id_t circ_id, connection_t *conn); circuit_t *circuit_get_by_circ_id_conn(uint16_t circ_id, connection_t *conn); circuit_t *circuit_get_by_conn(connection_t *conn); circuit_t *circuit_get_newest(connection_t *conn, int must_be_open); Loading Loading @@ -650,7 +648,7 @@ int connection_receiver_bucket_should_increase(connection_t *conn); int connection_is_listener(connection_t *conn); int connection_state_is_open(connection_t *conn); int connection_send_destroy(circ_id_t circ_id, connection_t *conn); int connection_send_destroy(uint16_t circ_id, connection_t *conn); int connection_process_inbuf(connection_t *conn); int connection_finished_flushing(connection_t *conn); Loading src/or/routerlist.c +4 −3 Original line number Diff line number Diff line Loading @@ -333,9 +333,10 @@ int router_set_routerlist_from_directory(const char *s, crypto_pk_env_t *pkey) } if (compare_recommended_versions(VERSION, routerlist->software_versions) < 0) { log(options.IgnoreVersion ? LOG_WARN : LOG_ERR, "You are running Tor version %s, which is not recommended.\n" "Please upgrade to one of %s.", VERSION, routerlist->software_versions); "You are running Tor version %s, which will not work with this network.\n" "Please use %s%s.", VERSION, strchr(routerlist->software_versions,',') ? "one of " : "", routerlist->software_versions); if(options.IgnoreVersion) { log(LOG_WARN, "IgnoreVersion is set. If it breaks, we told you so."); } else { Loading Loading
src/or/circuit.c +5 −5 Original line number Diff line number Diff line Loading @@ -10,7 +10,7 @@ static int relay_crypt(circuit_t *circ, char *in, char cell_direction, crypt_path_t **layer_hint, char *recognized); static connection_t *relay_lookup_conn(circuit_t *circ, cell_t *cell, int cell_direction); static void circuit_free_cpath_node(crypt_path_t *victim); static circ_id_t get_unique_circ_id_by_conn(connection_t *conn, int circ_id_type); static uint16_t get_unique_circ_id_by_conn(connection_t *conn, int circ_id_type); unsigned long stats_n_relay_cells_relayed = 0; unsigned long stats_n_relay_cells_delivered = 0; Loading Loading @@ -56,7 +56,7 @@ void circuit_remove(circuit_t *circ) { } } circuit_t *circuit_new(circ_id_t p_circ_id, connection_t *p_conn) { circuit_t *circuit_new(uint16_t p_circ_id, connection_t *p_conn) { circuit_t *circ; circ = tor_malloc_zero(sizeof(circuit_t)); Loading Loading @@ -129,8 +129,8 @@ static void circuit_free_cpath_node(crypt_path_t *victim) { } /* return 0 if can't get a unique circ_id. */ static circ_id_t get_unique_circ_id_by_conn(connection_t *conn, int circ_id_type) { circ_id_t test_circ_id; static uint16_t get_unique_circ_id_by_conn(connection_t *conn, int circ_id_type) { uint16_t test_circ_id; int attempts=0; uint16_t high_bit; Loading @@ -156,7 +156,7 @@ static circ_id_t get_unique_circ_id_by_conn(connection_t *conn, int circ_id_type return test_circ_id; } circuit_t *circuit_get_by_circ_id_conn(circ_id_t circ_id, connection_t *conn) { circuit_t *circuit_get_by_circ_id_conn(uint16_t circ_id, connection_t *conn) { circuit_t *circ; connection_t *tmpconn; Loading
src/or/connection.c +1 −1 Original line number Diff line number Diff line Loading @@ -647,7 +647,7 @@ int connection_state_is_open(connection_t *conn) { return 0; } int connection_send_destroy(circ_id_t circ_id, connection_t *conn) { int connection_send_destroy(uint16_t circ_id, connection_t *conn) { cell_t cell; assert(conn); Loading
src/or/cpuworker.c +8 −8 Original line number Diff line number Diff line Loading @@ -30,18 +30,18 @@ int connection_cpu_finished_flushing(connection_t *conn) { return 0; } static void tag_pack(char *tag, uint32_t addr, uint16_t port, circ_id_t circ_id) { static void tag_pack(char *tag, uint32_t addr, uint16_t port, uint16_t circ_id) { *(uint32_t *)tag = addr; *(uint16_t *)(tag+4) = port; *(circ_id_t *)(tag+6) = circ_id; *(uint16_t *)(tag+6) = circ_id; } static void tag_unpack(char *tag, uint32_t *addr, uint16_t *port, circ_id_t *circ_id) { static void tag_unpack(char *tag, uint32_t *addr, uint16_t *port, uint16_t *circ_id) { struct in_addr in; *addr = *(uint32_t *)tag; *port = *(uint16_t *)(tag+4); *circ_id = *(circ_id_t *)(tag+6); *circ_id = *(uint16_t *)(tag+6); in.s_addr = htonl(*addr); log_fn(LOG_DEBUG,"onion was from %s:%d, circ_id %d.", inet_ntoa(in), *port, *circ_id); Loading @@ -51,7 +51,7 @@ int connection_cpu_process_inbuf(connection_t *conn) { unsigned char buf[LEN_ONION_RESPONSE]; uint32_t addr; uint16_t port; circ_id_t circ_id; uint16_t circ_id; connection_t *p_conn; circuit_t *circ; Loading
src/or/or.h +8 −10 Original line number Diff line number Diff line Loading @@ -230,8 +230,6 @@ #define SOCKS4_NETWORK_LEN 8 typedef uint16_t circ_id_t; /* * Relay payload: * Relay command [1 byte] Loading Loading @@ -276,7 +274,7 @@ typedef uint16_t circ_id_t; /* cell definition */ typedef struct { circ_id_t circ_id; uint16_t circ_id; unsigned char command; unsigned char payload[CELL_PAYLOAD_SIZE]; } cell_t; Loading Loading @@ -331,7 +329,7 @@ struct connection_t { /* Used only by OR connections: */ tor_tls *tls; circ_id_t next_circ_id; /* Which circ_id do we try to use next on this connection? uint16_t next_circ_id; /* Which circ_id do we try to use next on this connection? * This is always in the range 0..1<<15-1.*/ /* bandwidth and receiver_bucket only used by ORs in OPEN state: */ Loading Loading @@ -450,8 +448,8 @@ struct circuit_t { int package_window; int deliver_window; circ_id_t p_circ_id; /* circuit identifiers */ circ_id_t n_circ_id; uint16_t p_circ_id; /* circuit identifiers */ uint16_t n_circ_id; crypto_cipher_env_t *p_crypto; /* used only for intermediate hops */ crypto_cipher_env_t *n_crypto; Loading Loading @@ -554,11 +552,11 @@ int fetch_from_buf_socks(buf_t *buf, socks_request_t *req); void circuit_add(circuit_t *circ); void circuit_remove(circuit_t *circ); circuit_t *circuit_new(circ_id_t p_circ_id, connection_t *p_conn); circuit_t *circuit_new(uint16_t p_circ_id, connection_t *p_conn); void circuit_free(circuit_t *circ); void circuit_free_cpath(crypt_path_t *cpath); circuit_t *circuit_get_by_circ_id_conn(circ_id_t circ_id, connection_t *conn); circuit_t *circuit_get_by_circ_id_conn(uint16_t circ_id, connection_t *conn); circuit_t *circuit_get_by_conn(connection_t *conn); circuit_t *circuit_get_newest(connection_t *conn, int must_be_open); Loading Loading @@ -650,7 +648,7 @@ int connection_receiver_bucket_should_increase(connection_t *conn); int connection_is_listener(connection_t *conn); int connection_state_is_open(connection_t *conn); int connection_send_destroy(circ_id_t circ_id, connection_t *conn); int connection_send_destroy(uint16_t circ_id, connection_t *conn); int connection_process_inbuf(connection_t *conn); int connection_finished_flushing(connection_t *conn); Loading
src/or/routerlist.c +4 −3 Original line number Diff line number Diff line Loading @@ -333,9 +333,10 @@ int router_set_routerlist_from_directory(const char *s, crypto_pk_env_t *pkey) } if (compare_recommended_versions(VERSION, routerlist->software_versions) < 0) { log(options.IgnoreVersion ? LOG_WARN : LOG_ERR, "You are running Tor version %s, which is not recommended.\n" "Please upgrade to one of %s.", VERSION, routerlist->software_versions); "You are running Tor version %s, which will not work with this network.\n" "Please use %s%s.", VERSION, strchr(routerlist->software_versions,',') ? "one of " : "", routerlist->software_versions); if(options.IgnoreVersion) { log(LOG_WARN, "IgnoreVersion is set. If it breaks, we told you so."); } else { Loading