Commit Graph

1551 Commits

Author SHA1 Message Date
Coren[m]
355c55f745 sendqueue_length no longer determines if we check for socket-can-write, but sendpacket() sets a timestamp if it happened
network.*:
- sendpacket(): checks result and on EAGAIN, stores time of this event
- networking_wait_prepare(): uses the time if set to check up to 500ms later for the socket to be writeable again
- networking_wait_cleanup(): clears the time if the socket was writeable
- fixed some accidental tabs

Messenger.*, tox.*:
- pass-through functions to reach networking_wait_cleanup()
- fixed some accidental tabs
2013-10-06 16:37:02 +02:00
Coren[m]
1331a32223 Broken *_wait() into *_wait_prepare() and *_wait_execute()
To allow the actual waiting to run without any locking, split it into preparing the data it uses and the execution of the wait.
The caller must provide with the buffer to store whatever data it requires to wait.
Completely eliminates any reliance on the existence of anything but that data in the actual wait routine.

Also fixed a few argument type warnings inside LOGGING.
2013-10-05 12:53:54 +02:00
Coren[m]
1f92ee274d Only add write-ready to select() if we have packets queued
Lossless_UDP.*:
- sendqueue_total() sums sendqueue() across all connections

network.*, Messenger.c:
- sendqueue_total() is collected and then used in deciding if we select() on write-readiness
2013-10-03 12:10:29 +02:00
Coren[m]
2af0d43ce8 Add tox_wait() for socket, allow tox.h include in tox.c
tox.*, Messenger.*, network.*;
- new function tox_wait() => waitMessenger() => networking_wait():
  - waits for a given amount of time for any sort of socket activity
  - mustn't change anything inside, mustn't poll or do other stuff
    - the point is to be able to call this asynchronously from a second thread
    - the outside shall follow up with an immediate tox_do() when there's socket activity

tox.*:
- allow inclusion of tox.h into tox.c, ensuring that the outside interface and the internal always match

util.c:
- squished a few warnings about questionable format strings
2013-10-02 16:38:54 +02:00
irungentoo
b9bffced7c Speeded up/fixed NAT hole punching and peer finding. 2013-09-30 17:20:35 -04:00
irungentoo
01ddd3249c Updated TODO. 2013-09-29 11:40:42 -04:00
irungentoo
9f1080f8b4 Fixed connection bug. 2013-09-29 08:07:10 -04:00
irungentoo
aae9fae257 Fixed possible problem. 2013-09-28 20:50:54 -04:00
irungentoo
d4e42230bd Potential DoS fixed. 2013-09-28 19:03:29 -04:00
irungentoo
8adb34e6a9 Fixed possible bug. 2013-09-28 17:19:32 -04:00
irungentoo
abd4278fc4 Connection bug fixed. 2013-09-28 12:13:26 -04:00
irungentoo
0e2173367a Merge branch 'FullName-ClientData46' 2013-09-28 10:42:14 -04:00
irungentoo
e1bea734e0 Fixed small issue. 2013-09-28 10:39:45 -04:00
irungentoo
2b8d0d045a Behaviour with LAN ips is now better, also fixed possible bug. 2013-09-28 10:27:25 -04:00
irungentoo
92f89b9384 LAN ips can be sent to LAN ips. 2013-09-28 09:54:17 -04:00
irungentoo
ed07194eb6 friend_iplist and route_tofriend behaviour fixes. 2013-09-28 09:21:08 -04:00
irungentoo
d4378fd394 Merge pull request #608 from Nominate/patch-5
Update INSTALL.md
2013-09-28 05:38:04 -07:00
Nominate
62e7d6bbb7 Update INSTALL.md
Included git in the apt-get so that new users can use the necessary git clone command.
2013-09-28 09:22:20 +01:00
irungentoo
d14ba73bc3 Fixed possible problem. 2013-09-27 23:10:33 -04:00
irungentoo
2dd1c5515c Astyled the code. 2013-09-27 22:03:38 -04:00
irungentoo
0e318af9e2 Merge branch 'ClientData46' of https://github.com/FullName/ProjectTox-Core into FullName-ClientData46 2013-09-27 21:10:34 -04:00
Coren[m]
f7f670bf7c don't lose globally valid addresses for locally valid ones 2013-09-27 21:34:13 +02:00
Coren[m]
483a6cc161 Logging loop corrected. 2013-09-27 19:50:42 +02:00
Coren[m]
06a85177e9 minimalistic increase in elegance ;)
DHT.c:
- loops over assoc4/6 slightly more elegant
2013-09-27 18:33:52 +02:00
irungentoo
c7c72b0756 Merge pull request #606 from FullName/Permit.Wshadow
Permit -Wshadow as useful warning.
2013-09-27 09:02:19 -07:00
Coren[m]
6fe25e4f6f Permit -Wshadow as useful warning. 2013-09-27 11:24:33 +02:00
Coren[m]
9de295374d expanded Client_data to hold two addresses (IPv4, IPv6) instead of one
Compilerflag: CLIENT_ONETOONE_IP (to define in DHT.h, default unset i.e. NEW case: two addresses)

Every function in DHT{_test}.c working on Client_data has been rewritten to store IPv4 addresses in assoc4, IPv6 addresses in assoc6.
Loading/Storing of states defined with other compiler switch is transparently adjusting to the differences.

DHT.h, DHT.c:
- introduction and handling of the structure changes

DHT_test.c, Messenger.c:
- logging adapted to new structures

util.h:
- LOGGING isn't undefined per default anymore
2013-09-27 03:27:52 +02:00
irungentoo
beff2b6de6 Possible bug fixed. 2013-09-25 13:19:19 -04:00
irungentoo
3c78aefce0 Fixed bug where hole punching was attempted even though the
clients were connected.

Increased the number of ports tried per interval of time.

Also astyled the files.
2013-09-25 10:07:07 -04:00
irungentoo
83c665f2c4 Fixed possible bug. 2013-09-25 07:37:55 -04:00
irungentoo
370e36815e Merge pull request #596 from FullName/ping.moveandclean
moved stuff that belongs into ping.[ch] there
2013-09-24 17:51:23 -07:00
irungentoo
7c300370b0 Merge branch 'master' of https://github.com/irungentoo/ProjectTox-Core 2013-09-24 18:22:18 -04:00
irungentoo
4a3bed3e85 Possibly fixed the weird disconnecting/reconnecting bug. 2013-09-24 18:15:15 -04:00
irungentoo
1994c3cd89 Possible bug fixed. 2013-09-24 09:57:49 -04:00
irungentoo
05a3851e43 Fixed windows build. 2013-09-24 07:56:06 -04:00
irungentoo
b0149318fa Merge pull request #604 from JFreegman/master
made setfriendname() part of public api
2013-09-24 03:49:06 -07:00
Jfreegman
23e03b0ba9 check length of name 2013-09-23 15:40:25 -04:00
irungentoo
5d25bc100c Fixed typo. 2013-09-23 13:45:51 -04:00
Jfreegman
c4702985a5 made setfriendname part of public api 2013-09-23 04:30:24 -04:00
irungentoo
47aa8b0505 Merge pull request #603 from stal888/patch-4
Fix bug.
2013-09-22 17:50:35 -07:00
stal
bcba9b957b Fix bug.
This makes it build on OS X again...
2013-09-22 17:49:14 -07:00
irungentoo
59170c7d01 Merge pull request #602 from davidgumberg/groupchat
A markdown-formatted file had the .txt extension
2013-09-22 15:59:02 -07:00
David Gumberg
7d1fb4bef0 A markdown-formatted file had the .txt extension 2013-09-22 14:15:09 -07:00
irungentoo
c43ad78ce7 Merge pull request #601 from maksqwe/master
Fix typo. "if (yesno != 0 || yesno != 1)" always true
2013-09-22 13:16:16 -07:00
Maks
f4163e324b Fix typo. "if (yesno != 0 || yesno != 1)" always true 2013-09-22 22:36:45 +03:00
irungentoo
bb6566e436 Astyled network.c 2013-09-22 14:37:04 -04:00
irungentoo
ed0071bcbc Merge branch 'win_inetpton' of https://github.com/BtbN/ProjectTox-Core 2013-09-22 14:29:37 -04:00
BtbN
a7eb9b2c34 Fix inet_pton/ntop on win32 2013-09-22 20:26:39 +02:00
irungentoo
757c958132 Merge branch 'master' of https://github.com/irungentoo/ProjectTox-Core 2013-09-22 14:26:24 -04:00
irungentoo
0d54a675ec Removed unused variables. 2013-09-22 14:25:52 -04:00