summaryrefslogtreecommitdiff
path: root/toxcore/onion_client.c
diff options
context:
space:
mode:
Diffstat (limited to 'toxcore/onion_client.c')
-rw-r--r--toxcore/onion_client.c29
1 files changed, 17 insertions, 12 deletions
diff --git a/toxcore/onion_client.c b/toxcore/onion_client.c
index 60a80bc6..7494ea94 100644
--- a/toxcore/onion_client.c
+++ b/toxcore/onion_client.c
@@ -701,7 +701,8 @@ static int client_add_to_list(Onion_Client *onion_c, uint32_t num, const uint8_t
701 701
702 sort_onion_node_list(list_nodes, list_length, onion_c->mono_time, reference_id); 702 sort_onion_node_list(list_nodes, list_length, onion_c->mono_time, reference_id);
703 703
704 int index = -1, stored = 0; 704 int index = -1;
705 int stored = 0;
705 unsigned int i; 706 unsigned int i;
706 707
707 if (onion_node_timed_out(&list_nodes[0], onion_c->mono_time) 708 if (onion_node_timed_out(&list_nodes[0], onion_c->mono_time)
@@ -1046,10 +1047,12 @@ int send_onion_data(Onion_Client *onion_c, int friend_num, const uint8_t *data,
1046 return -1; 1047 return -1;
1047 } 1048 }
1048 1049
1049 unsigned int i, good_nodes[MAX_ONION_CLIENTS], num_good = 0, num_nodes = 0; 1050 unsigned int good_nodes[MAX_ONION_CLIENTS];
1051 unsigned int num_good = 0;
1052 unsigned int num_nodes = 0;
1050 Onion_Node *list_nodes = onion_c->friends_list[friend_num].clients_list; 1053 Onion_Node *list_nodes = onion_c->friends_list[friend_num].clients_list;
1051 1054
1052 for (i = 0; i < MAX_ONION_CLIENTS; ++i) { 1055 for (unsigned int i = 0; i < MAX_ONION_CLIENTS; ++i) {
1053 if (onion_node_timed_out(&list_nodes[i], onion_c->mono_time)) { 1056 if (onion_node_timed_out(&list_nodes[i], onion_c->mono_time)) {
1054 continue; 1057 continue;
1055 } 1058 }
@@ -1081,7 +1084,7 @@ int send_onion_data(Onion_Client *onion_c, int friend_num, const uint8_t *data,
1081 1084
1082 unsigned int good = 0; 1085 unsigned int good = 0;
1083 1086
1084 for (i = 0; i < num_good; ++i) { 1087 for (unsigned int i = 0; i < num_good; ++i) {
1085 Onion_Path path; 1088 Onion_Path path;
1086 1089
1087 if (random_path(onion_c, &onion_c->onion_paths_friends, -1, &path) == -1) { 1090 if (random_path(onion_c, &onion_c->onion_paths_friends, -1, &path) == -1) {
@@ -1210,7 +1213,8 @@ static int send_dhtpk_announce(Onion_Client *onion_c, uint16_t friend_num, uint8
1210 } 1213 }
1211 } 1214 }
1212 1215
1213 int num1 = -1, num2 = -1; 1216 int num1 = -1;
1217 int num2 = -1;
1214 1218
1215 if (onion_dht_both != 1) { 1219 if (onion_dht_both != 1) {
1216 num1 = send_onion_data(onion_c, friend_num, data, DHTPK_DATA_MIN_LENGTH + nodes_len); 1220 num1 = send_onion_data(onion_c, friend_num, data, DHTPK_DATA_MIN_LENGTH + nodes_len);
@@ -1289,9 +1293,9 @@ int onion_addfriend(Onion_Client *onion_c, const uint8_t *public_key)
1289 return num; 1293 return num;
1290 } 1294 }
1291 1295
1292 unsigned int i, index = -1; 1296 unsigned int index = -1;
1293 1297
1294 for (i = 0; i < onion_c->num_friends; ++i) { 1298 for (unsigned int i = 0; i < onion_c->num_friends; ++i) {
1295 if (onion_c->friends_list[i].status == 0) { 1299 if (onion_c->friends_list[i].status == 0) {
1296 index = i; 1300 index = i;
1297 break; 1301 break;
@@ -1659,10 +1663,10 @@ void oniondata_registerhandler(Onion_Client *onion_c, uint8_t byte, oniondata_ha
1659 1663
1660static void do_announce(Onion_Client *onion_c) 1664static void do_announce(Onion_Client *onion_c)
1661{ 1665{
1662 unsigned int i, count = 0; 1666 unsigned int count = 0;
1663 Onion_Node *list_nodes = onion_c->clients_announce_list; 1667 Onion_Node *list_nodes = onion_c->clients_announce_list;
1664 1668
1665 for (i = 0; i < MAX_ONION_CLIENTS_ANNOUNCE; ++i) { 1669 for (unsigned int i = 0; i < MAX_ONION_CLIENTS_ANNOUNCE; ++i) {
1666 if (onion_node_timed_out(&list_nodes[i], onion_c->mono_time)) { 1670 if (onion_node_timed_out(&list_nodes[i], onion_c->mono_time)) {
1667 continue; 1671 continue;
1668 } 1672 }
@@ -1735,7 +1739,7 @@ static void do_announce(Onion_Client *onion_c)
1735 1739
1736 if (count <= random_u32() % MAX_ONION_CLIENTS_ANNOUNCE) { 1740 if (count <= random_u32() % MAX_ONION_CLIENTS_ANNOUNCE) {
1737 if (num_nodes != 0) { 1741 if (num_nodes != 0) {
1738 for (i = 0; i < (MAX_ONION_CLIENTS_ANNOUNCE / 2); ++i) { 1742 for (unsigned int i = 0; i < (MAX_ONION_CLIENTS_ANNOUNCE / 2); ++i) {
1739 const uint32_t num = random_u32() % num_nodes; 1743 const uint32_t num = random_u32() % num_nodes;
1740 client_send_announce_request(onion_c, 0, path_nodes[num].ip_port, path_nodes[num].public_key, nullptr, -1); 1744 client_send_announce_request(onion_c, 0, path_nodes[num].ip_port, path_nodes[num].public_key, nullptr, -1);
1741 } 1745 }
@@ -1749,7 +1753,8 @@ static void do_announce(Onion_Client *onion_c)
1749 */ 1753 */
1750static int onion_isconnected(const Onion_Client *onion_c) 1754static int onion_isconnected(const Onion_Client *onion_c)
1751{ 1755{
1752 unsigned int i, num = 0, announced = 0; 1756 unsigned int num = 0;
1757 unsigned int announced = 0;
1753 1758
1754 if (mono_time_is_timeout(onion_c->mono_time, onion_c->last_packet_recv, ONION_OFFLINE_TIMEOUT)) { 1759 if (mono_time_is_timeout(onion_c->mono_time, onion_c->last_packet_recv, ONION_OFFLINE_TIMEOUT)) {
1755 return 0; 1760 return 0;
@@ -1759,7 +1764,7 @@ static int onion_isconnected(const Onion_Client *onion_c)
1759 return 0; 1764 return 0;
1760 } 1765 }
1761 1766
1762 for (i = 0; i < MAX_ONION_CLIENTS_ANNOUNCE; ++i) { 1767 for (unsigned int i = 0; i < MAX_ONION_CLIENTS_ANNOUNCE; ++i) {
1763 if (!onion_node_timed_out(&onion_c->clients_announce_list[i], onion_c->mono_time)) { 1768 if (!onion_node_timed_out(&onion_c->clients_announce_list[i], onion_c->mono_time)) {
1764 ++num; 1769 ++num;
1765 1770