summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Schneider <asn@cryptomilk.org>2013-08-02 15:32:13 +0200
committerirungentoo <irungentoo@gmail.com>2013-08-02 09:41:22 -0400
commit20951dda7dfc0625fcbaccde4ec049ef6f2caeb6 (patch)
tree2cbecff5536d97df2601829d60578bf7589bf481
parent7379392d8097bc4f8fd49aed714fd6eab05b9d39 (diff)
DHT: Fix return value of time().
Signed-off-by: Andreas Schneider <asn@cryptomilk.org> Signed-off-by: irungentoo <irungentoo@gmail.com>
-rw-r--r--core/DHT.c40
-rw-r--r--core/DHT.h2
-rw-r--r--core/Messenger.c4
3 files changed, 23 insertions, 23 deletions
diff --git a/core/DHT.c b/core/DHT.c
index c77deaad..272641ee 100644
--- a/core/DHT.c
+++ b/core/DHT.c
@@ -85,7 +85,7 @@ typedef struct {
85 uint8_t hole_punching; 85 uint8_t hole_punching;
86 uint32_t punching_index; 86 uint32_t punching_index;
87 uint32_t punching_timestamp; 87 uint32_t punching_timestamp;
88 uint32_t recvNATping_timestamp; 88 int64_t recvNATping_timestamp;
89 uint64_t NATping_id; 89 uint64_t NATping_id;
90 uint32_t NATping_timestamp; 90 uint32_t NATping_timestamp;
91} Friend; 91} Friend;
@@ -98,7 +98,7 @@ typedef struct {
98typedef struct { 98typedef struct {
99 IP_Port ip_port; 99 IP_Port ip_port;
100 uint64_t ping_id; 100 uint64_t ping_id;
101 uint32_t timestamp; 101 int64_t timestamp;
102} Pinged; 102} Pinged;
103 103
104/*----------------------------------------------------------------------------------*/ 104/*----------------------------------------------------------------------------------*/
@@ -138,7 +138,7 @@ int id_closest(uint8_t * client_id, uint8_t * client_id1, uint8_t * client_id2)
138int client_in_list(Client_data * list, uint32_t length, uint8_t * client_id, IP_Port ip_port) 138int client_in_list(Client_data * list, uint32_t length, uint8_t * client_id, IP_Port ip_port)
139{ 139{
140 uint32_t i; 140 uint32_t i;
141 uint32_t temp_time = unix_time(); 141 int64_t temp_time = unix_time();
142 142
143 for(i = 0; i < length; ++i) { 143 for(i = 0; i < length; ++i) {
144 /*If ip_port is assigned to a different client_id replace it*/ 144 /*If ip_port is assigned to a different client_id replace it*/
@@ -188,7 +188,7 @@ int get_close_nodes(uint8_t * client_id, Node_format * nodes_list)
188{ 188{
189 uint32_t i, j, k; 189 uint32_t i, j, k;
190 int num_nodes=0; 190 int num_nodes=0;
191 uint32_t temp_time = unix_time(); 191 int64_t temp_time = unix_time();
192 for(i = 0; i < LCLIENT_LIST; ++i) 192 for(i = 0; i < LCLIENT_LIST; ++i)
193 if(close_clientlist[i].timestamp + BAD_NODE_TIMEOUT > temp_time && 193 if(close_clientlist[i].timestamp + BAD_NODE_TIMEOUT > temp_time &&
194 !client_in_nodelist(nodes_list, MAX_SENT_NODES,close_clientlist[i].client_id)) { 194 !client_in_nodelist(nodes_list, MAX_SENT_NODES,close_clientlist[i].client_id)) {
@@ -230,7 +230,7 @@ int get_close_nodes(uint8_t * client_id, Node_format * nodes_list)
230int replace_bad(Client_data * list, uint32_t length, uint8_t * client_id, IP_Port ip_port) /* tested */ 230int replace_bad(Client_data * list, uint32_t length, uint8_t * client_id, IP_Port ip_port) /* tested */
231{ 231{
232 uint32_t i; 232 uint32_t i;
233 uint32_t temp_time = unix_time(); 233 int64_t temp_time = unix_time();
234 for(i = 0; i < length; ++i) 234 for(i = 0; i < length; ++i)
235 if(list[i].timestamp + BAD_NODE_TIMEOUT < temp_time) { /* if node is bad. */ 235 if(list[i].timestamp + BAD_NODE_TIMEOUT < temp_time) { /* if node is bad. */
236 memcpy(list[i].client_id, client_id, CLIENT_ID_SIZE); 236 memcpy(list[i].client_id, client_id, CLIENT_ID_SIZE);
@@ -249,7 +249,7 @@ int replace_bad(Client_data * list, uint32_t length, uint8_t * client_id, IP_Por
249int replace_good(Client_data * list, uint32_t length, uint8_t * client_id, IP_Port ip_port, uint8_t * comp_client_id) 249int replace_good(Client_data * list, uint32_t length, uint8_t * client_id, IP_Port ip_port, uint8_t * comp_client_id)
250{ 250{
251 uint32_t i; 251 uint32_t i;
252 uint32_t temp_time = unix_time(); 252 int64_t temp_time = unix_time();
253 253
254 for(i = 0; i < length; ++i) 254 for(i = 0; i < length; ++i)
255 if(id_closest(comp_client_id, list[i].client_id, client_id) == 2) { 255 if(id_closest(comp_client_id, list[i].client_id, client_id) == 2) {
@@ -288,7 +288,7 @@ void addto_lists(IP_Port ip_port, uint8_t * client_id)
288void returnedip_ports(IP_Port ip_port, uint8_t * client_id, uint8_t * nodeclient_id) 288void returnedip_ports(IP_Port ip_port, uint8_t * client_id, uint8_t * nodeclient_id)
289{ 289{
290 uint32_t i, j; 290 uint32_t i, j;
291 uint32_t temp_time = unix_time(); 291 int64_t temp_time = unix_time();
292 if(memcmp(client_id, self_public_key, CLIENT_ID_SIZE) == 0) { 292 if(memcmp(client_id, self_public_key, CLIENT_ID_SIZE) == 0) {
293 for(i = 0; i < LCLIENT_LIST; ++i) 293 for(i = 0; i < LCLIENT_LIST; ++i)
294 if(memcmp(nodeclient_id, close_clientlist[i].client_id, CLIENT_ID_SIZE) == 0) { 294 if(memcmp(nodeclient_id, close_clientlist[i].client_id, CLIENT_ID_SIZE) == 0) {
@@ -316,7 +316,7 @@ int is_pinging(IP_Port ip_port, uint64_t ping_id)
316{ 316{
317 uint32_t i; 317 uint32_t i;
318 uint8_t pinging; 318 uint8_t pinging;
319 uint32_t temp_time = unix_time(); 319 int64_t temp_time = unix_time();
320 320
321 for(i = 0; i < LPING_ARRAY; ++i ) 321 for(i = 0; i < LPING_ARRAY; ++i )
322 if((pings[i].timestamp + PING_TIMEOUT) > temp_time) { 322 if((pings[i].timestamp + PING_TIMEOUT) > temp_time) {
@@ -340,7 +340,7 @@ int is_gettingnodes(IP_Port ip_port, uint64_t ping_id)
340{ 340{
341 uint32_t i; 341 uint32_t i;
342 uint8_t pinging; 342 uint8_t pinging;
343 uint32_t temp_time = unix_time(); 343 int64_t temp_time = unix_time();
344 344
345 for(i = 0; i < LSEND_NODES_ARRAY; ++i ) 345 for(i = 0; i < LSEND_NODES_ARRAY; ++i )
346 if((send_nodes[i].timestamp + PING_TIMEOUT) > temp_time) { 346 if((send_nodes[i].timestamp + PING_TIMEOUT) > temp_time) {
@@ -368,7 +368,7 @@ uint64_t add_pinging(IP_Port ip_port)
368{ 368{
369 uint32_t i, j; 369 uint32_t i, j;
370 uint64_t ping_id = ((uint64_t)random_int() << 32) + random_int(); 370 uint64_t ping_id = ((uint64_t)random_int() << 32) + random_int();
371 uint32_t temp_time = unix_time(); 371 int64_t temp_time = unix_time();
372 372
373 for(i = 0; i < PING_TIMEOUT; ++i ) 373 for(i = 0; i < PING_TIMEOUT; ++i )
374 for(j = 0; j < LPING_ARRAY; ++j ) 374 for(j = 0; j < LPING_ARRAY; ++j )
@@ -387,7 +387,7 @@ uint64_t add_gettingnodes(IP_Port ip_port)
387{ 387{
388 uint32_t i, j; 388 uint32_t i, j;
389 uint64_t ping_id = ((uint64_t)random_int() << 32) + random_int(); 389 uint64_t ping_id = ((uint64_t)random_int() << 32) + random_int();
390 uint32_t temp_time = unix_time(); 390 int64_t temp_time = unix_time();
391 391
392 for(i = 0; i < PING_TIMEOUT; ++i ) 392 for(i = 0; i < PING_TIMEOUT; ++i )
393 for(j = 0; j < LSEND_NODES_ARRAY; ++j ) 393 for(j = 0; j < LSEND_NODES_ARRAY; ++j )
@@ -684,7 +684,7 @@ IP_Port DHT_getfriendip(uint8_t * client_id)
684{ 684{
685 uint32_t i, j; 685 uint32_t i, j;
686 IP_Port empty = {{{0}}, 0}; 686 IP_Port empty = {{{0}}, 0};
687 uint32_t temp_time = unix_time(); 687 int64_t temp_time = unix_time();
688 for(i = 0; i < num_friends; ++i) 688 for(i = 0; i < num_friends; ++i)
689 /* Equal */ 689 /* Equal */
690 if(memcmp(friends_list[i].client_id, client_id, CLIENT_ID_SIZE) == 0) { 690 if(memcmp(friends_list[i].client_id, client_id, CLIENT_ID_SIZE) == 0) {
@@ -705,7 +705,7 @@ IP_Port DHT_getfriendip(uint8_t * client_id)
705void doDHTFriends() 705void doDHTFriends()
706{ 706{
707 uint32_t i, j; 707 uint32_t i, j;
708 uint32_t temp_time = unix_time(); 708 int64_t temp_time = unix_time();
709 uint32_t rand_node; 709 uint32_t rand_node;
710 uint32_t index[MAX_FRIEND_CLIENTS]; 710 uint32_t index[MAX_FRIEND_CLIENTS];
711 711
@@ -739,7 +739,7 @@ static uint32_t close_lastgetnodes;
739void doClose() /* tested */ 739void doClose() /* tested */
740{ 740{
741 uint32_t i; 741 uint32_t i;
742 uint32_t temp_time = unix_time(); 742 int64_t temp_time = unix_time();
743 uint32_t num_nodes = 0; 743 uint32_t num_nodes = 0;
744 uint32_t rand_node; 744 uint32_t rand_node;
745 uint32_t index[LCLIENT_LIST]; 745 uint32_t index[LCLIENT_LIST];
@@ -792,7 +792,7 @@ static int friend_iplist(IP_Port * ip_portlist, uint16_t friend_num)
792{ 792{
793 int num_ips = 0; 793 int num_ips = 0;
794 uint32_t i; 794 uint32_t i;
795 uint32_t temp_time = unix_time(); 795 int64_t temp_time = unix_time();
796 if(friend_num >= num_friends) 796 if(friend_num >= num_friends)
797 return -1; 797 return -1;
798 for(i = 0; i < MAX_FRIEND_CLIENTS; ++i) 798 for(i = 0; i < MAX_FRIEND_CLIENTS; ++i)
@@ -813,7 +813,7 @@ int route_tofriend(uint8_t * friend_id, uint8_t * packet, uint32_t length)
813{ 813{
814 uint32_t i, j; 814 uint32_t i, j;
815 uint32_t sent = 0; 815 uint32_t sent = 0;
816 uint32_t temp_time = unix_time(); 816 int64_t temp_time = unix_time();
817 for(i = 0; i < num_friends; ++i) 817 for(i = 0; i < num_friends; ++i)
818 /* Equal */ 818 /* Equal */
819 if(memcmp(friends_list[i].client_id, friend_id, CLIENT_ID_SIZE) == 0) { 819 if(memcmp(friends_list[i].client_id, friend_id, CLIENT_ID_SIZE) == 0) {
@@ -839,7 +839,7 @@ int routeone_tofriend(uint8_t * friend_id, uint8_t * packet, uint32_t length)
839 IP_Port ip_list[MAX_FRIEND_CLIENTS]; 839 IP_Port ip_list[MAX_FRIEND_CLIENTS];
840 int n = 0; 840 int n = 0;
841 uint32_t i; 841 uint32_t i;
842 uint32_t temp_time = unix_time(); 842 int64_t temp_time = unix_time();
843 for(i = 0; i < MAX_FRIEND_CLIENTS; ++i) 843 for(i = 0; i < MAX_FRIEND_CLIENTS; ++i)
844 /*If ip is not zero and node is good */ 844 /*If ip is not zero and node is good */
845 if(friends_list[num].client_list[i].ret_ip_port.ip.i != 0 && 845 if(friends_list[num].client_list[i].ret_ip_port.ip.i != 0 &&
@@ -989,7 +989,7 @@ static void punch_holes(IP ip, uint16_t * port_list, uint16_t numports, uint16_t
989static void doNAT() 989static void doNAT()
990{ 990{
991 uint32_t i; 991 uint32_t i;
992 uint32_t temp_time = unix_time(); 992 int64_t temp_time = unix_time();
993 for(i = 0; i < num_friends; ++i) { 993 for(i = 0; i < num_friends; ++i) {
994 IP_Port ip_list[MAX_FRIEND_CLIENTS]; 994 IP_Port ip_list[MAX_FRIEND_CLIENTS];
995 int num = friend_iplist(ip_list, i); 995 int num = friend_iplist(ip_list, i);
@@ -1078,7 +1078,7 @@ int DHT_load(uint8_t * data, uint32_t size)
1078 if((size - sizeof(close_clientlist)) % sizeof(Friend) != 0) 1078 if((size - sizeof(close_clientlist)) % sizeof(Friend) != 0)
1079 return -1; 1079 return -1;
1080 uint32_t i, j; 1080 uint32_t i, j;
1081 /* uint32_t temp_time = unix_time(); */ 1081 /* int64_t temp_time = unix_time(); */
1082 uint16_t temp; 1082 uint16_t temp;
1083 1083
1084 temp = (size - sizeof(close_clientlist))/sizeof(Friend); 1084 temp = (size - sizeof(close_clientlist))/sizeof(Friend);
@@ -1108,7 +1108,7 @@ int DHT_load(uint8_t * data, uint32_t size)
1108int DHT_isconnected() 1108int DHT_isconnected()
1109{ 1109{
1110 uint32_t i; 1110 uint32_t i;
1111 uint32_t temp_time = unix_time(); 1111 int64_t temp_time = unix_time();
1112 for(i = 0; i < LCLIENT_LIST; ++i) 1112 for(i = 0; i < LCLIENT_LIST; ++i)
1113 if(close_clientlist[i].timestamp + BAD_NODE_TIMEOUT > temp_time) 1113 if(close_clientlist[i].timestamp + BAD_NODE_TIMEOUT > temp_time)
1114 return 1; 1114 return 1;
diff --git a/core/DHT.h b/core/DHT.h
index dbb640a5..5e1fd0a5 100644
--- a/core/DHT.h
+++ b/core/DHT.h
@@ -31,7 +31,7 @@ extern "C" {
31#endif 31#endif
32 32
33/* Current time, unix format */ 33/* Current time, unix format */
34#define unix_time() ((uint32_t)time(NULL)) 34#define unix_time() ((int64_t)time(NULL))
35 35
36/* size of the client_id in bytes */ 36/* size of the client_id in bytes */
37#define CLIENT_ID_SIZE crypto_box_PUBLICKEYBYTES 37#define CLIENT_ID_SIZE crypto_box_PUBLICKEYBYTES
diff --git a/core/Messenger.c b/core/Messenger.c
index f8a794ce..30f3f658 100644
--- a/core/Messenger.c
+++ b/core/Messenger.c
@@ -27,7 +27,7 @@
27typedef struct { 27typedef struct {
28 uint8_t client_id[CLIENT_ID_SIZE]; 28 uint8_t client_id[CLIENT_ID_SIZE];
29 int crypt_connection_id; 29 int crypt_connection_id;
30 int friend_request_id; /* id of the friend request corresponding to the current friend request to the current friend. */ 30 int64_t friend_request_id; /* id of the friend request corresponding to the current friend request to the current friend. */
31 uint8_t status; /* 0 if no friend, 1 if added, 2 if friend request sent, 3 if confirmed friend, 4 if online. */ 31 uint8_t status; /* 0 if no friend, 1 if added, 2 if friend request sent, 3 if confirmed friend, 4 if online. */
32 uint8_t info[MAX_DATA_SIZE]; /* the data that is sent during the friend requests we do */ 32 uint8_t info[MAX_DATA_SIZE]; /* the data that is sent during the friend requests we do */
33 uint8_t name[MAX_NAME_LENGTH]; 33 uint8_t name[MAX_NAME_LENGTH];
@@ -491,7 +491,7 @@ static void doInbound()
491/*Interval in seconds between LAN discovery packet sending*/ 491/*Interval in seconds between LAN discovery packet sending*/
492#define LAN_DISCOVERY_INTERVAL 60 492#define LAN_DISCOVERY_INTERVAL 60
493 493
494static uint32_t last_LANdiscovery; 494static int64_t last_LANdiscovery;
495 495
496/*Send a LAN discovery packet every LAN_DISCOVERY_INTERVAL seconds*/ 496/*Send a LAN discovery packet every LAN_DISCOVERY_INTERVAL seconds*/
497static void LANdiscovery() 497static void LANdiscovery()