summaryrefslogtreecommitdiff
path: root/toxcore
AgeCommit message (Collapse)Author
2013-11-18Added functions tox_count_chatlist and tox_copy_chatlist.Jman012
These functions are akin to the tox_count_friendlist and tox_copy_friendlist, made available on the public API.
2013-11-18Merge pull request #650 from FullName/ID-IP-basicirungentoo
Significantly trimmed down version of an ID<=>IP cache.
2013-11-17Merge pull request #652 from FullName/reset_on_long_timeoutirungentoo
Tolerate instable connectivity.
2013-11-17Fixed segfault.irungentoo
2013-11-17Tolerate instable connectivity: if *all* set close nodes are in terminal ↵Coren[m]
timeout (KILL_NODE_TIMEOUT), reset them all to BAD_NODE_TIMEOUT. That keeps the client trying to at least ping the nodes in the hopes of the connection coming back up.
2013-11-16Fixed build error on windows.irungentoo
2013-11-16Send our name when someone new joins the group chat.irungentoo
2013-11-17Assoc's array is now allocated dynamically and per default much smaller (320 ↵Coren[m]
entries). id_hash() was not at all working as expected for very small bucket size (when (size / 4) was zero). Simplified to be trivially correct. Also added a used flag on adding an entry, which is set by callers if they have that association in active use. Those get priority over unused entries on collision. Fleshed out test to be at least elementary useful. Each group chat now uses an own, small assoc (80 entries).
2013-11-14Merge pull request #649 from FullName/DHT-client_id-change-wipe-other-addressirungentoo
On replacing a client with another, clear the stale association.
2013-11-14Significantly trimmed down version of an ID<=>IP cache.Coren[m]
Besides acknowledging timeouts, the module isn't trying to do anything fancy with the data besides storing and retrieving.
2013-11-14On replacing a client with another, clear the stale association.Coren[m]
Also check both associations for timeout, not just the incoming one. Also removed client_in_list(): static & unused.
2013-11-13IPv6 address of ::1 is local.Coren[m]
2013-11-12Cleaned up the code.irungentoo
2013-11-12Merge branch 'group_peername' of https://github.com/FullName/ProjectTox-Core ↵irungentoo
into FullName-group_peername
2013-11-12Merge pull request #645 from FullName/nTox-patchesirungentoo
nTox: enforce friend name null termination, reduce memory loss, allow nickchange as oldname=>newname
2013-11-12Group chat: Add a nickname message. Remove strange default nickname. ↵Coren[m]
(Seriously...) group_chats.*: - group_send_nick() to send own name - setnick() to store a received name Messenger.c: - group_send_nick() before group_sendmessage() (in regular intervals, to inform new peers) nTox.c: - print_groupmessage(): on error or on a name of length zero the result of tox_group_peername() isn't null-terminated, catch that
2013-11-11Fixed possible segfault.irungentoo
2013-11-11Merge remote-tracking branch 'upstream/master' into nTox-patchesCoren[m]
2013-11-11nTox.c:Coren[m]
- multiple places: tox_getname() doesn't terminate the string, make sure nTox does - format_message(): . - renamed to print_formatted_message() . - changed semantics: does the new_line() itself, saves caller from freeing the buffer (which no caller did) . - changed signature: now also prints the friend's name when sending . - intern: date is only printed once, the message line gets only time - print_message(): enforce null termination - main(): . - setlocale() to init locale (for date/time printing) . - own name: ensure null termination Messenger.c: - notify of friend name change *before* the old name is overwritten
2013-11-09Optimized data sending slightly more.irungentoo
2013-11-08Code cleanups.irungentoo
2013-11-07Merge branch 'add2lists_forward' of ↵irungentoo
https://github.com/FullName/ProjectTox-Core into FullName-add2lists_forward
2013-11-07Merge pull request #642 from FullName/dht_handle_sendnodes_unifyirungentoo
Unify most of handle_sendnodes[_ipv6]() into a common core.
2013-11-06Unify most of handle_sendnodes[_ipv6]() into a common ↵Coren[m]
handle_sendnodes_core(), leave only a minimal trail.
2013-11-06Behind #define LOGGING: Correct usage of now() to replacement unix_time().Coren[m]
2013-11-06addto_lists(): store the IP/Port that was used to *send*.Coren[m]
Avoids a DOS of sending a copy of a valid response with an invalid IP.
2013-11-05Auto delete inactive peers in the group chat.irungentoo
2013-11-04Send ping packets in group chats every 30 seconds.irungentoo
2013-11-03The group chats we invite a friend to are now stored.irungentoo
2013-11-02Fixed possible issue.irungentoo
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-26Increased port range.irungentoo
2013-10-26Clarified a comment.irungentoo
2013-10-25Update time before running functions for recieved packets.irungentoo
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-23Code cleanups.irungentoo
2013-10-23Code cleanups.irungentoo
2013-10-22This squash should work now.Bahkuh
2013-10-20Fixed possible bug.irungentoo
2013-10-20Merge branch 'Cleanup-defines' of ↵irungentoo
https://github.com/FullName/ProjectTox-Core into FullName-Cleanup-defines
2013-10-20Main: Eliminate TOX_ENABLE_IPV6 (then always on), CLIENT_ONETOONE_IP (then ↵Coren[m]
always off). Additionally (besides cleanups): network.h/tox.h: - WIN32: fix a strange sa_family_t definition - WIN32: define EWOULDBLOCK to WSAEWOULDBLOCK - WIN32: kill macro for an existing function (IN6_ADDR_EQUAL) network.c: - use EWOULDBLOCK instead of EAGAIN (same value, but EWOULDBLOCK is more "popular") - new_networking(): only try to enable IPv4-in-IPv6 if it's not already enabled per default - inet_ntop()/inet_pton(): WIN32: remove partial initializers in favor of a simple memset() - ip_equal(): WIN32: use an existing function - logging: networking_wait_execute(): only dump result if not timeout - logging: loglogdata(): kill an unused variable LAN_discovery.c: - send_broadcasts(): re-enabled, can only support IPv4 by principle, split into fetch_broadcast_info() (to fetch the addresses once) and send_broadcasts() (actual sending) DHT.c: - DHT_load_state_callback(): enclosed a fprintf(stderr, ...) into #ifdef DEBUG Lossless_UDP.c: - change_handshake(): harden against strange sa_family_t definitions Messenger.c: - logging: fix ID to string conversion util.c: - logging: eliminate a signed-warning
2013-10-19Merge branch 'master' of https://github.com/irungentoo/ProjectTox-Coreirungentoo
2013-10-19Fixed connection sometimes being too slow and some other possible problems.irungentoo
2013-10-19fixed build errors on windowsAntonio Montes
2013-10-18Removed bad function from public API (This breaks toxic.)irungentoo
2013-10-17Fixed minor typo.Bahkuh
2013-10-15Updated public api.irungentoo