summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--auto_tests/tox_test.c2
-rw-r--r--toxcore/onion_client.c7
2 files changed, 7 insertions, 2 deletions
diff --git a/auto_tests/tox_test.c b/auto_tests/tox_test.c
index fa1d43e1..682cdb54 100644
--- a/auto_tests/tox_test.c
+++ b/auto_tests/tox_test.c
@@ -281,6 +281,8 @@ void tox_connection_status(Tox *tox, TOX_CONNECTION connection_status, void *use
281 if (connected_t1 && !connection_status) 281 if (connected_t1 && !connection_status)
282 ck_abort_msg("Tox went offline"); 282 ck_abort_msg("Tox went offline");
283 283
284 ck_assert_msg(connection_status == TOX_CONNECTION_UDP, "wrong status %u", connection_status);
285
284 connected_t1 = connection_status; 286 connected_t1 = connection_status;
285} 287}
286 288
diff --git a/toxcore/onion_client.c b/toxcore/onion_client.c
index 4f049fbc..8609c6b6 100644
--- a/toxcore/onion_client.c
+++ b/toxcore/onion_client.c
@@ -1452,12 +1452,15 @@ void do_onion_client(Onion_Client *onion_c)
1452 } 1452 }
1453 } 1453 }
1454 1454
1455 onion_c->UDP_connected = DHT_non_lan_connected(onion_c->dht); 1455 _Bool UDP_connected = DHT_non_lan_connected(onion_c->dht);
1456 1456
1457 if (is_timeout(onion_c->first_run, ONION_CONNECTION_SECONDS)) { 1457 if (is_timeout(onion_c->first_run, ONION_CONNECTION_SECONDS)) {
1458 set_tcp_onion_status(onion_c->c->tcp_c, !onion_c->UDP_connected); 1458 set_tcp_onion_status(onion_c->c->tcp_c, !UDP_connected);
1459 } 1459 }
1460 1460
1461 onion_c->UDP_connected = UDP_connected
1462 || get_random_tcp_onion_conn_number(onion_c->c->tcp_c) == -1; /* Check if connected to any TCP relays. */
1463
1461 if (onion_connection_status(onion_c)) { 1464 if (onion_connection_status(onion_c)) {
1462 for (i = 0; i < onion_c->num_friends; ++i) { 1465 for (i = 0; i < onion_c->num_friends; ++i) {
1463 do_friend(onion_c, i); 1466 do_friend(onion_c, i);