Commit Graph

214 Commits

Author SHA1 Message Date
irungentoo
8ae0a79305
Move the handshake creating code to a function.
Fixed another instance where it was not sent.
2014-05-02 15:59:13 -04:00
irungentoo
8b29ac8eae
Fixed one case of the handshake not being sent. 2014-05-02 15:25:18 -04:00
irungentoo
aca18f65c3
Small fixes. 2014-05-02 15:13:10 -04:00
irungentoo
8e24771fc4
Remove Lossless UDP (This breaks Tox.) 2014-05-02 10:36:48 -04:00
irungentoo
47aa53a384
Protocol implementation is starting to look ok.
Still need to decide exactly how data packets will work though.
2014-05-01 19:20:28 -04:00
irungentoo
509edb983f
Remove duplicates. 2014-04-30 21:01:09 -04:00
irungentoo
5715e50169
Some more code written for the middle level protocol stuff. 2014-04-30 20:53:43 -04:00
irungentoo
0505df009b
Added number to cookie request/response packets to prevent possible
DoS issue.
2014-04-30 09:24:05 -04:00
irungentoo
3863e01e22
Some more work done on the middle network protocol.
Handshake most likely has no more possible flaws to it, next thing
to do is to do the same with the data packets.

Wrote a couple more functions.
2014-04-29 20:45:32 -04:00
irungentoo
b9370d519f
Added some functions to create/handle middle level protocol packets. 2014-04-28 20:14:07 -04:00
irungentoo
50cea69f57
Added raw UDP cookie request packet handler. 2014-04-27 20:37:59 -04:00
irungentoo
384750af8c
Major cleanups.
Fixed circular dependency between DHT and net_crypto: DHT no longer
depends on net_crypto.

Moved the crypto request packets functions to crypto core and DHT.

Cleaned up/added some defines that can be used to get the true maximum
length of things like the friends request message.

MAX_DATA_SIZE has been replaced in most places by more appropriate defines.
2014-04-23 11:35:40 -04:00
irungentoo
1bfe15ee88
Decided pretty much how the handshake would work.
Started writing the code.

Astyled some files.
2014-04-22 20:28:40 -04:00
irungentoo
9c6a8432ce Crypto related cleanups.
Moved Bunch of functions from net_crypto to crypto_core.

decrypt_data_fast and decrypt_data_symmetric were the same thing
therefore, removed decrypt_data_fast.

Replaced all the crypto_secretbox_* defines with the equivalent
crypto_box_* one.

New define: crypto_box_KEYBYTES that is equal to
crypto_box_BEFORENMBYTES.
2014-04-21 16:51:36 -04:00
irungentoo
9f6b17de55
Added function to increment nonce by specified number.
Nonces now behave like big endian numbers.
2014-04-18 20:36:52 -04:00
irungentoo
e95494482f A bit of work done on the TCP relay server. 2014-03-15 22:11:36 -04:00
irungentoo
d058a59ccf Fixed some possible ways connections could linger indefinitely without being killed. 2014-03-07 16:05:08 -05:00
irungentoo
a251e71a97 Some small changes/fixes.
Changed some timeouts and made cryptopacket_handle return correctly.
2014-03-03 20:46:34 -05:00
irungentoo
cd2474a2f6 Incorporated onion into Tox.
Fixed a couple of issues related to that.
2014-01-17 13:35:40 -05:00
irungentoo
878762a8e4 Added functions to add/remove friends in onion_client.
Added a tiny optimization to net_crypto.
2014-01-13 20:11:54 -05:00
irungentoo
977aab7f2f It makes more sense for new_keys() to be in new_net_crypto() 2013-12-26 09:47:35 -05:00
irungentoo
83cb946db0 Removed upper size limit from encrypt and decrypt_data_symmetric. 2013-12-21 19:42:30 -05:00
irungentoo
cbee548b0a Fixed arm bug. 2013-12-12 13:49:49 -05:00
irungentoo
606c2c12ab Small fixes. 2013-12-07 21:13:07 -05:00
irungentoo
beaa31bebc Testing requests are now sent. 2013-10-30 19:50:06 -04:00
irungentoo
415835ce3d Merge branch 'master' into harden
Also removed some old, useless loading code.
2013-10-28 16:01:29 -04:00
irungentoo
d2ab13c611 Cleaned up some code/fixed some warnings.
I'm sure nobody has any of the old save files anymore so I removed the
functions.
2013-10-27 20:25:31 -04:00
irungentoo
9ccdac0e82 All modules using unix_time should run unix_time_update() 2013-10-25 14:47:34 -04:00
irungentoo
b891446c31 For security reasons, keep memcpy's and memcmp's in crypto functions. 2013-10-25 14:43:47 -04:00
Coren[m]
065495cd7c Merge remote-tracking branch 'upstream/master' into cleanup_unix_time_id_eq_cpy_is_timeout
Conflicts:
	toxcore/net_crypto.c
2013-10-24 22:47:23 +02:00
Coren[m]
0a4c3d7e2e Move unix_time(), id_cpy()/id_eq(), is_timeout() to util.*
unix_time():
- returns local value for current epoch
- value is updated explicitly with unix_time_update() called at new_DHT()/doMessenger()/do_DHT()

is_timeout():
- uses the local value for current epoch

id_cpy()/id_eq() => id_copy()/id_equal():
- centralized duplicate definitions
- replaced (most) memcpy()/memcmp() of (*, *, CLIENT_ID_SIZE) with id_copy()/id_equal()
2013-10-24 22:32:28 +02:00
irungentoo
bba10544e7 Added symmetric crypto functions to net_crypto. 2013-10-24 15:55:52 -04:00
irungentoo
8e0ab68d30 Removed define that could become confusing. 2013-10-24 13:34:04 -04:00
irungentoo
a67b4f8c6d Code cleanups. 2013-10-23 14:32:09 -04:00
Bahkuh
f581e20233 This squash should work now. 2013-10-22 20:24:48 +02:00
irungentoo
147d820ad2 Fixed connection sometimes being too slow and some other possible problems. 2013-10-19 22:29:48 -04:00
irungentoo
6ef2b5ead6 Code cleanups. 2013-10-06 17:40:23 -04:00
irungentoo
edf799133c Fixed some possible bugs. 2013-10-04 11:20:47 -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
Coren[m]
6fe25e4f6f Permit -Wshadow as useful warning. 2013-09-27 11:24:33 +02:00
irungentoo
beff2b6de6 Possible bug fixed. 2013-09-25 13:19:19 -04:00
irungentoo
0d54a675ec Removed unused variables. 2013-09-22 14:25:52 -04:00
irungentoo
83c6e9dd35 Fixed the connection bug and cleaned up some stuff. 2013-09-22 11:08:23 -04:00
irungentoo
a6abf007cb Connection speed ups. 2013-09-21 09:33:44 -04:00
irungentoo
3e4599e33a Lossless UDP is now suitable for sending files.
Added some actual flow control and made send/recieve buffers grow when
necessary.
2013-09-21 09:03:54 -04:00
irungentoo
5a83c1296c astyled everything. 2013-09-17 16:28:39 -04:00
Sebastian Stal
96d39de223 Fix leaks and null dereferences in net_crypto 2013-09-15 10:48:16 -07:00
Coren[m]
fa576e464e Merge remote-tracking branch 'upstream/master' into Integration 2013-09-13 19:44:14 +02:00
irungentoo
339dcd6070 Nonce generation changes.
Nonces don't need to be random, only different.

also random_int now gives same quality random numbers for both NaCl and
libsodium.
2013-09-13 10:42:14 -04:00
Coren[m]
bcb283cf45 big push, putting all the infrastructure in place behind TOX_ENABLE_IPV6 2013-09-10 16:36:20 +02:00
Jin^eLD
e092eee869 Allow to build vs nacl instead of libsodium
By default libsodium is used. Only if --enable-nacl is specified, then
nacl will be used instead of libsodium.

Pass locations of nacl headers and libraries by using the following
options:

--with-nacl-headers=/home/me/somewhere/nacl-20110221/build/469/include/amd64/
--with-nacl-libs=/home/me/somewhere/nacl-20110221/build/469/lib/amd64/
2013-09-06 22:54:45 +03:00
irungentoo
bb35305d94 Merge branch 'group-chats' 2013-09-05 17:02:23 -04:00
irungentoo
31f43799e1 Fixed small problem. 2013-09-04 07:26:30 -04:00
irungentoo
c59975dd7e Work in progress group chats.
Not done yet.
2013-09-03 08:53:07 -04:00
irungentoo
b73ba8244a Removed useless code, possibly fixed something. 2013-09-02 16:52:09 -04:00
irungentoo
a4bf25801d Merge branch 'master' of https://github.com/JamoBox/ProjectTox-Core into JamoBox-master 2013-09-02 15:59:28 -04:00
JamoBox
7b944e9c65 comment updates 2013-09-02 17:12:02 +01:00
irungentoo
5233656561 Properly fixed signed/unsigned comparisons. 2013-09-02 09:55:37 -04:00
Tyler Bunnell
d1c52788c5 Fix signed/unsigned comparison warnings 2013-09-01 20:42:59 -06:00
Kostya
25563ac070 Fixed build errors. 2013-08-30 03:28:50 -04:00
irungentoo
ea994606fe Merge branch 'master' of https://github.com/JamoBox/ProjectTox-Core into JamoBox-master
Conflicts:
	toxcore/LAN_discovery.h
2013-08-29 17:55:58 -04:00
pete
82b8927af7 Correct a lot of the grammar and spelling. Also spent a few hours fixing the comments so they follow a standard. 2013-08-29 22:17:51 +01:00
jin-eld
e658892793 Rename core directory because of autoconf name clash
While doing the checks configure might generate "core" files and will
then try to remove them. Having a "core" directory generates an error
while runing the configure script.

There's no workaround but to rename the core directory.
2013-08-24 03:25:07 +03:00