summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-09-14Save datafile when adding a friend/accepting a friend request.Coren[m]
(Note to self: make clean is your friend. Those extra seconds are well spent.)
2013-09-14DHT.c:Coren[m]
- get_close_nodes(): refactored the inner loop out into get_close_nodes_inner()
2013-09-14network.c:Coren[m]
- addr_resolve(): for() instead of while(), flip conditions for a much neater function (suggested by Andreas Schneider) - ip_ntoa(): enforced termination: terminate at the maximum position, that's the one snprintf() may forget - networking_poll(): forgot tabs2spaces
2013-09-14Merge remote-tracking branch 'upstream/master' into nToxCoren[m]
2013-09-14LAN_discovery.c:Coren[m]
- LAN_ip(): use standard macro from IPv4-in-IPv6 test
2013-09-14DHT.c:Coren[m]
- get_close_nodes()/sendnodes()/sendnodes_ipv6(): when selecting for SEND_NODES/SEND_NODES_IPV6, treat embedded IPv4-in-IPv6 addresses as being IPv4 Messenger.c: - added a named constant for sixty seconds friend/client dump - fix logging to convert client_id to printable before printing
2013-09-14Change sublength to 32 bits. Someone might have more than (sizeof(Friends) / ↵Coren[m]
65536) friends...
2013-09-13Merge remote-tracking branch 'upstream/master' into IntegrationCoren[m]
2013-09-13Merge remote-tracking branch 'upstream/master' into MessengerLoadSaveCoren[m]
2013-09-13State loading/saving: Instead of a blob, segment into sections marked with tags.Coren[m]
Primary rationale: The part that DHT saves changes if IP is expanded to IPv6. To let people keep their friends/name, change the datafile format now, while everybody is still on the same page. Loading/Saving rewritten to allow a part of the file to be incomprehensible to the loading routine. Added a magic cookie at the beginning to mark the file as tox's. Changes in some part of the datafile can be skipped and the remaining parts still be consumed. Allows a wide margin of forward compatibility (like the IP to IPv6 transition, but also e.g. a change in the key format). As long as the file is not completely garbled, the routine will read as much as possible. Only the KEY section is considered mandatory: a malformed key section leads to a negative result. util.*: - holds the driving function which jumps from section to section and calls back with section length and tag (type) Messenger.c,DHT.*: - new loading functions call the util-function with a callback, which subsequently consumes the sections - old routines are kept to fall back onto if the magic cookie at the beginning isn't present - saving is still done in one local routine
2013-09-13Nonce generation changes.irungentoo
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-13Rename load_old_key_or_save_new_one() to load_data_or_init().Coren[m]
2013-09-13Made (load_/save_)data() functions static.Coren[m]
2013-09-13Merge remote-tracking branch 'upstream/master' into nToxCoren[m]
2013-09-13Merge remote-tracking branch 'upstream/master' into IntegrationCoren[m]
2013-09-13TOX_ENABLE_IPV6 is now #define'd per default. Added some logging and error ↵Coren[m]
messages.
2013-09-12Put group chat functions in the public API.irungentoo
Group chats are not complete, they seem to work very well though. This means that the functions will change.
2013-09-12Merge branch 'master' of https://github.com/irungentoo/ProjectTox-Coreirungentoo
2013-09-12Very basic group chats, tested and working with nTox.irungentoo
Please wait until the tox.h API is updated before integrating it into your clients. nTox: /g creates a new group chat /i friendnum groupnum invite friendnum to groupnum /z groupnum message send message to groupnum NOTE: group chats currenly might not handle packet loss well if there are less than 6 participants.
2013-09-12Merge pull request #575 from FullName/DHT_bootstrapirungentoo
Patch to allow DHT_bootstrap to also do LAN discovery.
2013-09-12Merge remote-tracking branch 'upstream/master' into IntegrationCoren[m]
Conflicts resolved: toxcore/Messenger.c toxcore/network.h
2013-09-12Merge remote-tracking branch 'upstream/master' into DHT_bootstrapCoren[m]
Conflicts: toxcore/Messenger.c
2013-09-12Merge remote-tracking branch 'upstream/master' into nToxCoren[m]
2013-09-12Patch to allow DHT_bootstrap to also do LAN discovery.Coren[m]
This patch inserts LAN discovery in DHT_bootstrap, allowing it to find clients even if it's run parameterless (and clients don't connect to it directly, e.g. because the port is already bound to a different client). - moves the #define of LAN_DISCOVERY_INTERVAL from Messenger.c to LAN_discovery.h - includes LAN_discovery.h into DHT_bootstrap.c - DHT_bootstrap.c sends and accepts LAN_discovery packets
2013-09-12network.*:Coren[m]
- addr_resolv(_or_parse_ip)(): added an optional parameter to return both an IPv6 and an IPv4 address if requested address family was AF_UNSPEC - logging of unhandled packets DHT.c: - bootstrap_from_address(): use the additional return from addr_resolv_or_parse_ip() to bootstrap in both network types at once Lossless_UDP_testclient.c: - main(): adapt to signature change of addr_resolve() Messenger.c. LAN_discovery.h: - lost a htons(), readded - moved LAN_DISCOVERY_INTERVAL #define into LAN_discovery.h LAN_discovery.c: - added IPv4-in-IPv6 local address test
2013-09-12Messenger.c:Coren[m]
- remove local PORT definition in favor of TOX_PORT_DEFAULT
2013-09-12tox.h:Coren[m]
- #define'd tox's network port (as range) - finally killed tox_new_ex() in favor of changing tox_new()'s signature - renamed tox_bootstrap() to tox_bootstrap_from_ip() network.h: - #define'd tox's network port (as range) - renamed SEND_NODES_EX to SEND_NODES_IPV6 - bind() loop uses #define'd port range DHT.c: - renamed SEND_NODES_EX to SEND_NODES_IPV6 - sending ipv6 node addresses even if can't use them ourselves nTox.c: - adapted to changed tox_new()
2013-09-12nTox.c:Coren[m]
- correct a message who claims we're going to exit when we actually aren't - don't treat a failed close on reading the data file as failure of the reading
2013-09-11Integration of group chats into messenger in progress.irungentoo
2013-09-11Some small work on group chats done.irungentoo
2013-09-12nTox.c:Coren[m]
- don't claim "Added friend" per default, check for returned ID first - on '/q' SAVE... else everything but the keys is lost on each restart - for that, split load_key() into load_data() and save_data() - announce own nickname on startup
2013-09-11network.c:Coren[m]
- removed almost unused variable without further use
2013-09-11Messenger.c:Coren[m]
- unbroke Messenger_load(): lost a length adjustment - addeditional check for enough data available
2013-09-11tox.h, DHT.h:Coren[m]
- tox_bootstrap_ex(), DHT_bootstrap_ex() renamed to tox_bootstrap_from_address(), DHT_bootstrap_from_address() - (handle_)sendnodes_ex() renamed to (handle_)sendnodes_ipv6() - only sending sendnodes_ipv6() if we're actually IPv6 enabled - changed comments to conform better nTox.c, Messenger_text.c, DHT_test.c, DHT_bootstrap.c: - fallout from *_ex() to *_from_address() DHT_bootstrap.c: - corrected a potentially wrong info message util.c: - fixed logfile name: now (funcptr) => now() (number) network.c: - addead comment about the necessity of bind() to succeed auto_test/messenger_test.c: - defaulting ipv6enabled to TOX_ENABLE_IPV6_DEFAULT LAN_discovery.c: - slight cleanup and comments for clarity
2013-09-11cleanup TravisCI warnings (missing exports/extraneous args to printf)Coren[m]
2013-09-11network.c:Coren[m]
- undo "fixing" the wrong variable - fix the logging in receivepacket()
2013-09-11toxcore/util.h:Coren[m]
- moved cmdline_parsefor_ipv46() to testing/misc_tools.c
2013-09-11Prettier fix to missing length initializationCoren[m]
2013-09-11network.c: logging more details, fixing pollCoren[m]
LAN_discovery.c: IPv6: send both v6 multicast and v4 broadcast if socket allows
2013-09-11cmdline parsing:Coren[m]
- add missing includes (autobuild warnings)
2013-09-11network.c:Coren[m]
- reset errno from failed bind() calls if the last one succeeds DHT_bootstrap.c: - move the perror() output next to where it belongs to
2013-09-11Merge remote-tracking branch 'upstream/master' into IntegrationCoren[m]
2013-09-11cmdline parsing of --ipv4/6 plucked into utilCoren[m]
2013-09-10Fixed building with NaCl.irungentoo
2013-09-10Merge remote-tracking branch 'upstream/master' into IntegrationCoren[m]
2013-09-10tox.*, DHT.*:Coren[m]
- return to the caller if the string could be resolved into an IP other/DHT_bootstrap.c, testing/*_test.c, testing/nTox.c: - parse cmdline for --ipv4/--ipv6 switch to allow user a choice util.h: - proper old-style C-comment
2013-09-10Merge branch 'master' of https://github.com/irungentoo/ProjectTox-Coreirungentoo
2013-09-10Commented out useless function.irungentoo
2013-09-10DHT.c:Coren[m]
- client_in_list: split loop in two to avoid inserting a client_id duplicate - final pieces for IPv6 expansion: (handle_)sendnodes_ex(), called from hande_getnodes() resp. handler callback
2013-09-10Merge remote-tracking branch 'upstream/master' into IntegrationCoren[m]