summaryrefslogtreecommitdiff
path: root/toxcore/onion.c
AgeCommit message (Collapse)Author
2016-12-22Wrap all sodium/nacl functions in crypto_core.c.iphydf
2016-11-09Remove new_nonce function in favour of random_nonce.iphydf
`new_nonce` has been an alias for `random_nonce` for a while now. Having two names for the same operation is confusing. `random_nonce` better expresses the intent. The documentation for `new_nonce` talks about guaranteeing that the nonce is different from previous ones, which is incorrect, it's just quite likely to be different.
2016-09-24Make toxcore code C++ compatible.iphydf
It is still C code, so still compatible with C compilers as well. This change lets us see more clearly where implicit conversions occur by making them explicit.
2016-09-13Use <stdbool.h> and replace _Bool with bool.iphydf
This header is a requirement for the public API, therefore is assumed to exist. It is a C99 standard library header, and _Bool is not intended to be used directly, except in legacy code that defines bool (and true/false) itself. We don't use or depend on such code. None of our client code uses or depends on such code. There is no reason to not use bool.
2016-09-13Group #include directives in 3-4 groups.iphydf
1. Current module (if C file). 2. Headers from current library. 3. Headers from other library (e.g. toxcore includes in toxav). 4. System headers.
2016-09-02Do not use `else` after `return`.iphydf
http://llvm.org/docs/CodingStandards.html#use-early-exits-and-continue-to-simplify-code
2016-08-31Add braces to all if statements.iphydf
2016-08-18Make tox_callback_friend_name stateless.iphydf
See #27 and #40 for details.
2015-05-01Added a define for the length of onion paths.irungentoo
2015-04-20Some small fixes.irungentoo
Increased interval between onion key changes to 2 hours.
2015-01-29Code cleanups.irungentoo
Rename array in Node_format from client_id to public_key.
2015-01-20Fixed gcc warnings.irungentoo
2015-01-13Fix TCP server regression.irungentoo
onion.c was parsing recieved packets a bit too strictly and discarding packets that had ips with non valid families. TCP uses a non valid family to send back the packet to the proper connected node.
2015-01-01Code cleanups.irungentoo
Moved some functions to onion.c. Fixed possible portability issues.
2014-12-31Code cleanup.irungentoo
Added length checks to ipport_pack() function.
2014-12-31Check if received ip family is valid for the onion packets.irungentoo
2014-12-25Add function to get nodes from onion path.irungentoo
2014-11-21Cleaned up packet length types in toxcore.irungentoo
They are now all uint16_t instead of sometimes being uint32_t. Replaced some other uint32_t with unsigned ints.
2014-08-13Added function to create onion packets to send via TCP.irungentoo
2014-08-11Added length check to onion_send_1().irungentoo
2014-07-02Merge branch 'const_correctness' of https://github.com/schuetzm/ProjectTox-Coreirungentoo
2014-06-30Const-correctness for onion.cMarc Schütz
2014-06-30Const-correctness for toxcore/onion_announce.cMarc Schütz
2014-06-18Preparation work to make onion packets go through TCP.irungentoo
2014-06-13Const correctness for various packet callbacksMarc Schütz
2014-05-19added missing ipport_packnotsecure
2014-05-19IP_Port packing unpacking in onion.cnotsecure
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-03-29TCP server now has onion functionality.irungentoo
All the IP/Port related structs now have __attribute__ ((__packed__))
2014-03-28TCP server almost ready.irungentoo
2014-03-05CPU optimizations.irungentoo
Use get_shared_key() in more places.
2014-02-26Major speed/cpu usage/bandwidth improvements to onion.irungentoo
2014-02-13Made onion paths expire.irungentoo
2014-01-25Fixed possible anonimity leak with the onion routing.irungentoo
2014-01-21Fixed some portability issues.irungentoo
2014-01-17Incorporated onion into Tox.irungentoo
Fixed a couple of issues related to that.
2014-01-05Tests added and some fixes for the onion part.irungentoo
2014-01-03A bit of work done on the onion part.irungentoo
2014-01-01Some small cleanups.irungentoo
TODO: remove old todos that have been done.
2013-12-31Added onion.c to build system and added a test.irungentoo
2013-12-31Fixed small issues in onion.cirungentoo
2013-12-30Added a function to create and send a onion packet.irungentoo
2013-12-29onion.c now handles another packet type.irungentoo
2013-12-28Another packet type is now handled by onion.cirungentoo
2013-12-27Another packet type added to onion.cirungentoo
2013-12-25All recv packets now handled.irungentoo
2013-12-24Added the shell of onion.{c, h}irungentoo