summaryrefslogtreecommitdiff
path: root/ot_udp.c
AgeCommit message (Collapse)Author
2009-01-05* http and udp routines now use thread local buffers passed in workstruct containers. In other words they do not use static_buffer anymore and are ↵erdgeist
considered to be thread safe. * the new workstruct also introduces a well defined buffer and result passing path * a new function scan_find_keywords is a wrapper around scan_urlencoded_query that maps keys in url to values passed in an array of ot_keywords structs * this new function cleans up much of url parameter parsing work, where read_ptr and write_ptr have been introduced rather than the confusing char *c, *data variables * I now use memcmp instead of byte_diff to allow compiler to optimize constant size string compares * got rid of UTORRENT_1600_WORKAROUND * livesync_ticker is now only called from one (currently main) thread to avoid race conditions
2009-01-02* opentracker now drops permissions in correct order and really chroots() if ran as rooterdgeist
* lock passing between add_peer_to_torrent and return_peers_for_torrent is now avoided by providing a more general add_peer_to_torrent_and_return_peers function that can be used with NULL parameters to not return any peers (in sync case) * in order to keep a fast overview how many torrents opentracker maintains, every mutex_bucket_unlock operation expects an additional integer parameter that tells ot_mutex.c how many torrents have been added or removed. A function mutex_get_torrent_count has been introduced.
2008-12-06Renamed OT_FLAG to OT_PEERFLAG to make code easier to readerdgeist
Introduced READ16/32 and WRITE16/32 makros to abstract loading/storing from unaligned addresses away on cpu's that can actually load/store everywhere Removed all unnecessary memmoves, especially where it only moved 6 bytes in inner loop. I replaced them with WRITE16/32(READ16/32()) makros
2008-11-28The BIG refactoring [tm]. Too many changes to count them. If it doesn't suite you, revert to last version.erdgeist
2008-10-28Whitespace fixeserdgeist
2008-10-06Bugfix: API change missed in two points, when calling return_peers_for_torrent. is_tcp was replaced by FLAG_TCP or FLAG_UDPerdgeist
2008-10-04added live sync codeerdgeist
added a config file parser added tracker id changed WANT_CLOSED_TRACKER and WANT_BLACKLIST into WANT_ACCESS_WHITE and WANT_ACCESS_BLACK changed WANT_TRACKER_SYNC to WANT_SYNC_BATCH and added WANT_SYNC_LIVE added an option to switch off fullscrapes cleaned up many internal hardcoded values, like PROTO_FLAG,
2008-09-15now checking for the correct connection-id we gave outdenis
2008-02-05Fix endianess issues, also obey number of peers requested in udp announceserdgeist
2008-01-17Introducing live busy network detection.erdgeist
2007-12-20Introduce some kind of versioningerdgeist
2007-12-15too many wrong udp requests scroll too much :) disable logging for nowerdgeist
2007-12-15more udp debuggingerdgeist
2007-12-15Do not lock out well behaving clientserdgeist
2007-12-15more udp debuggingerdgeist
2007-12-15Prepare udp connection id generation and checkingerdgeist
2007-12-03Drop ot_{byte,word,dword} and use uint{8,16,32}_t, also simplify includeserdgeist
2007-11-21static bufs are not shared anymore, even if that means more memory.erdgeist
2007-11-06Missing newline warning, missing include fixederdgeist
2007-11-06Have an own file handle udp requests.erdgeist