summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-02-03Forgot to copy the stats?mode=tcp4 parametererdgeist
2009-01-26Make snprintf write to the correct locationerdgeist
2009-01-26Lot of Gehacktes around this keyword scanner. Don't return a match if string to compare is shorter than key from table.erdgeist
2009-01-21This memmove was for real...erdgeist
2009-01-19Limit comparison of strings to the length of the shorter stringerdgeist
2009-01-16Fix a pointer arithmetic issue leading to incorrect peer data being copied. Allocate correct size for debugbuffer. Expect exact values on find keywords, not ↵erdgeist
only prefix match.
2009-01-16Remove debug messageerdgeist
2009-01-16Use a self pipe to wake from io_wait when a thread finished his work.erdgeist
2009-01-15Add comments, rename our struct http_data h to cookie, all clientsockets to sock, all size_t from socket_recvs to byte_count. Make signal handler set ↵erdgeist
default handler for the second SIGINT
2009-01-15Some premature optimization lead to always only 8bytes of ot_peers being copiederdgeist
2009-01-15Make v4 and v6 modes v4/v6-ONLYerdgeist
2009-01-15We sent an incorrect reply dictionary vor v6 announceserdgeist
2009-01-14fix parsererdgeist
2009-01-13V6erdgeist
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-03Make opentracker ANSI C again.erdgeist
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.
2009-01-02Introduce new flag WANT_SYNC_SCRAPEerdgeist
2009-01-02Fix incorrect prototype for accesslist_deiniterdgeist
2009-01-01minor white spaceerdgeist
2009-01-01minoe white spaceerdgeist
2008-12-30Fix badly formed bencoded answer to stopped eventserdgeist
2008-12-11Fix: Did not time stamp a torrent correctly, that once timed out and came back to lifeerdgeist
2008-12-10Propose a scrape sync protocol.erdgeist
2008-12-08Make all torrents in their buckets sorted again.erdgeist
2008-12-07Fix: auto increment in += is not a post increment...erdgeist
2008-12-07Fix post increase on wrong pointer type.erdgeist
2008-12-07Used wrong variable as offset into hash to copyerdgeist
2008-12-07Handle program end more politelyerdgeist
2008-12-06Avoid cast warning on 64bit machineserdgeist
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-12-06Format for full scrapes was not parsed correctly.erdgeist
2008-12-06Make mutex_lock_bucket_by_hash generic to any OT_BUCKET_COUNTerdgeist
2008-12-06Forgot one define READ32erdgeist
2008-12-05Tidy up unnecessary includeserdgeist
2008-12-05Add specialized vector functions to handle peers in sorted listserdgeist
Assume that compare_size is a mulptiple of 4 in all non-specialized cases and load int32_t to compare.
2008-12-05Let's give a damn about syntactical correctness of peer's http strings. It's too expensive on both sides to check and to reject.erdgeist
2008-12-03Now enforce that peers do not come back before our interval by giving out a 'min interval' in responses.erdgeist
2008-12-03printf is buffered, write not. Use printf for all.erdgeist
2008-12-03fix size of 0 issueerdgeist
2008-12-03Add debug code to spot peers that come back too earlyerdgeist
2008-12-03Add debug code to store peer iderdgeist
2008-12-03New peer flag to see, whether peer came from announce or syncerdgeist
2008-12-03Aid spotting bad clients...erdgeist
2008-12-03stats fuer syncdenis
2008-12-01Live Sync for peers that do not come back too early.erdgeist
2008-11-28The BIG refactoring [tm]. Too many changes to count them. If it doesn't suite you, revert to last version.erdgeist
2008-11-03Bugfix: Number of Pools << Number of Bucketserdgeist
2008-11-03Try to use much less memory and hope for speedupserdgeist
2008-11-03Spread the amount of time spent in cleanup about 2 minuteserdgeist