summaryrefslogtreecommitdiff
path: root/toxcore/net_crypto.c
AgeCommit message (Collapse)Author
2014-05-04Added arrays to store packets on send/recv in net crypto.irungentoo
Wrote down more of the protocol. Padding support has been added and implemented which will make it possible for us to pad packets to mitigate length related attacks.
2014-05-03All time in core is now monotonic.irungentoo
2014-05-02Messenger now works with the new net_crypto api.irungentoo
Added callbacks in net_crypto for the data packets and status changes. Added onion_getfriend_DHT_pubkey to onion_client. Net crypto isn't done yet so connections between toxes are not lossless, this means file sending is broken hence why the test fails.
2014-05-02Move the handshake creating code to a function.irungentoo
Fixed another instance where it was not sent.
2014-05-02Fixed one case of the handshake not being sent.irungentoo
2014-05-02Small fixes.irungentoo
2014-05-02Remove Lossless UDP (This breaks Tox.)irungentoo
2014-05-01Protocol implementation is starting to look ok.irungentoo
Still need to decide exactly how data packets will work though.
2014-04-30Remove duplicates.irungentoo
2014-04-30Some more code written for the middle level protocol stuff.irungentoo
2014-04-30Added number to cookie request/response packets to prevent possibleirungentoo
DoS issue.
2014-04-29Some more work done on the middle network protocol.irungentoo
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-28Added some functions to create/handle middle level protocol packets.irungentoo
2014-04-27Added raw UDP cookie request packet handler.irungentoo
2014-04-23Major cleanups.irungentoo
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-22Decided pretty much how the handshake would work.irungentoo
Started writing the code. Astyled some files.
2014-04-21Crypto related cleanups.irungentoo
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-18Added function to increment nonce by specified number.irungentoo
Nonces now behave like big endian numbers.
2014-03-15A bit of work done on the TCP relay server.irungentoo
2014-03-07Fixed some possible ways connections could linger indefinitely without being ↵irungentoo
killed.
2014-03-03Some small changes/fixes.irungentoo
Changed some timeouts and made cryptopacket_handle return correctly.
2014-01-17Incorporated onion into Tox.irungentoo
Fixed a couple of issues related to that.
2014-01-13Added functions to add/remove friends in onion_client.irungentoo
Added a tiny optimization to net_crypto.
2013-12-26It makes more sense for new_keys() to be in new_net_crypto()irungentoo
2013-12-21Removed upper size limit from encrypt and decrypt_data_symmetric.irungentoo
2013-12-12Fixed arm bug.irungentoo
2013-12-07Small fixes.irungentoo
2013-10-30Testing requests are now sent.irungentoo
2013-10-28Merge branch 'master' into hardenirungentoo
Also removed some old, useless loading code.
2013-10-27Cleaned up some code/fixed some warnings.irungentoo
I'm sure nobody has any of the old save files anymore so I removed the functions.
2013-10-25All modules using unix_time should run unix_time_update()irungentoo
2013-10-25For security reasons, keep memcpy's and memcmp's in crypto functions.irungentoo
2013-10-24Merge remote-tracking branch 'upstream/master' into ↵Coren[m]
cleanup_unix_time_id_eq_cpy_is_timeout Conflicts: toxcore/net_crypto.c
2013-10-24Move unix_time(), id_cpy()/id_eq(), is_timeout() to util.*Coren[m]
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-24Added symmetric crypto functions to net_crypto.irungentoo
2013-10-24Removed define that could become confusing.irungentoo
2013-10-23Code cleanups.irungentoo
2013-10-22This squash should work now.Bahkuh
2013-10-19Fixed connection sometimes being too slow and some other possible problems.irungentoo
2013-10-06Code cleanups.irungentoo
2013-10-04Fixed some possible bugs.irungentoo
2013-09-28Fixed possible problem.irungentoo
2013-09-28Potential DoS fixed.irungentoo
2013-09-27Permit -Wshadow as useful warning.Coren[m]
2013-09-25Possible bug fixed.irungentoo
2013-09-22Removed unused variables.irungentoo
2013-09-22Fixed the connection bug and cleaned up some stuff.irungentoo
2013-09-21Connection speed ups.irungentoo
2013-09-21Lossless UDP is now suitable for sending files.irungentoo
Added some actual flow control and made send/recieve buffers grow when necessary.
2013-09-17astyled everything.irungentoo