6f31485efeMake opentracker return tracker id in stats=everything request
Dirk Engling
2009-07-15 16:14:38 +0000
7fbeb6b010Missed the last info_hash
Dirk Engling
2009-07-15 00:37:23 +0000
936d0ed2f1Parse accesslist file by mmaping the whole thing and searching for lines by ourself. fgets is slooooooow on linux.
Dirk Engling
2009-07-14 21:22:02 +0000
bb1e76c1a4Order peers by whether they seed. This way clients can chose if they prefer leechers (at the beginning) or leechers (at the end of the list).
Dirk Engling
2009-07-14 20:51:14 +0000
f7cb2cf545Be more verbose if the accesslist can not be found
Dirk Engling
2009-07-14 13:14:45 +0000
73f781c0a3Don't default the incoming port to 6881 but rather use 0 to indicate a less than valid announce
Dirk Engling
2009-07-14 13:05:03 +0000
f6025394bdOnly get old accesslist value shortly before freeing it
Dirk Engling
2009-07-14 13:03:01 +0000
eda672e253Reloading accesslists left a wide window for race conditions.
Dirk Engling
2009-07-14 12:32:41 +0000
2aca3aafcfMake attempts to access to unauthorized torrents more verbose.
Dirk Engling
2009-07-04 20:14:03 +0000
baa8b31981Make accesslist function check for the correct signal
Dirk Engling
2009-07-01 02:48:56 +0000
0c0a4533b7Fixed an incorrect peer count in udp responses. Credits to Theron Lewis.
Dirk Engling
2009-06-28 23:11:13 +0000
bc521d9911Major rewrite of live bad network logging. You can now limit logging to any netmask. HTTP interface for that coming soon.
Dirk Engling
2009-06-15 14:41:47 +0000
1e8b74da9aLog networks in its old form has been disabled. Live logging may come back soon.
Dirk Engling
2009-06-15 14:40:36 +0000
60bc1c7424There seems to be more broken v6 APIs than just the OpenBSD one. Linux smells as well.
Dirk Engling
2009-03-18 14:53:35 +0000
dc7f849827If we don't want v6, tell libowfat not to worry about it.
Dirk Engling
2009-03-18 14:49:13 +0000
c8f053f955Fix XML syntax
Dirk Engling
2009-03-18 02:33:47 +0000
a4af3583f2Fix white spaces Introduce loading tracker states with -l Alter tracker state to a human readable form
Dirk Engling
2009-03-17 23:57:19 +0000
695c079a25Found some minor issues in busy network detection code.
Dirk Engling
2009-03-12 22:53:30 +0000
aa6467cc21Re-implement logging busy networks to handle v6 API. Implement a state dump for later reparsing.
Dirk Engling
2009-03-12 18:47:02 +0000
50301645a4Add a everything stats page. So you won't have to remember what all those switches were. Remove the prepared Add/Remove-Torrent count until we implement it. Remove the start/stop count until we implement it.
Dirk Engling
2009-03-04 15:33:44 +0000
abe840d529Add a stat option the count bucket stalls Add an iterator for all torrents. It's slower but for stats it's okay. Move some stats collection stuff to the new iterator. More to come. Start a "report all stats" page. Start fixing the code to identify "busy" networks. Add the concept of hosts allowed to proxy. Add a parser for the X-Forwarded-For: HTTP header. Clean up HTTP Header handling code. (Remove some left overs of now vanished sync code).
Dirk Engling
2009-03-04 14:35:21 +0000
e6b16afb19Value of off is not used, so don't calculate it
Dirk Engling
2009-03-03 01:24:02 +0000
bd44fd7c4dRemove superfluous test for == NULL, when variable has been used, anyway
Dirk Engling
2009-03-03 01:22:50 +0000
7628ed7201Reset delta_torrentcount to zero on each pass
Dirk Engling
2009-02-20 12:31:55 +0000
fae0329fe9Reverse logic... do only fail if scan_ip6 cant parse
Dirk Engling
2009-02-03 16:46:16 +0000
bf362a914dReverse logic... do only sync those NOT coming from multi cast
Dirk Engling
2009-02-03 16:45:44 +0000
6c618f1015decrease the udp multicast packetsize so it fits into one ether frame
Denis Ahrens
2009-02-03 14:41:17 +0000
b8394881a4Forgot to copy the stats?mode=tcp4 parameter
Dirk Engling
2009-02-03 12:21:36 +0000
74d96438c6Make snprintf write to the correct location
Dirk Engling
2009-01-26 11:30:10 +0000
4b77b8b776Lot of Gehacktes around this keyword scanner. Don't return a match if string to compare is shorter than key from table.
Dirk Engling
2009-01-26 10:33:46 +0000
78626b6453This memmove was for real...
Dirk Engling
2009-01-21 00:11:57 +0000
679016139dLimit comparison of strings to the length of the shorter string
Dirk Engling
2009-01-19 18:22:25 +0000
b73fc5042cFix a pointer arithmetic issue leading to incorrect peer data being copied. Allocate correct size for debugbuffer. Expect exact values on find keywords, not only prefix match.
Dirk Engling
2009-01-16 04:17:22 +0000
4e7e39dc1cUse a self pipe to wake from io_wait when a thread finished his work.
Dirk Engling
2009-01-16 02:26:50 +0000
0987307ea3Add 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 default handler for the second SIGINT
Dirk Engling
2009-01-15 23:01:36 +0000
83d62ba0fbSome premature optimization lead to always only 8bytes of ot_peers being copied
Dirk Engling
2009-01-15 22:10:54 +0000
b2ca164922* 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 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
Dirk Engling
2009-01-05 18:05:38 +0000
823f93a96fMake opentracker ANSI C again.
Dirk Engling
2009-01-03 03:25:34 +0000
49ec59cbbe* opentracker now drops permissions in correct order and really chroots() if ran as root * 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.
Dirk Engling
2009-01-02 08:57:49 +0000
621c8462beIntroduce new flag WANT_SYNC_SCRAPE
Dirk Engling
2009-01-02 07:55:11 +0000
508e170d30Fix incorrect prototype for accesslist_deinit
Dirk Engling
2009-01-02 07:52:17 +0000
2cf9b92729minor white space
Dirk Engling
2009-01-01 17:49:50 +0000
ea4bff6bdcminoe white space
Dirk Engling
2009-01-01 17:44:04 +0000
e6ceb56796Fix badly formed bencoded answer to stopped events
Dirk Engling
2008-12-30 18:40:09 +0000
d0c417d9f3Fix: Did not time stamp a torrent correctly, that once timed out and came back to life
Dirk Engling
2008-12-11 11:48:34 +0000
6b57113bf0Propose a scrape sync protocol.
Dirk Engling
2008-12-10 14:19:37 +0000
343169385eMake all torrents in their buckets sorted again.
Dirk Engling
2008-12-08 02:23:21 +0000
32edd0dff8Fix: auto increment in += is not a post increment...
Dirk Engling
2008-12-07 13:14:24 +0000
3557e9edd7Fix post increase on wrong pointer type.
Dirk Engling
2008-12-07 12:04:43 +0000
efce908bbcUsed wrong variable as offset into hash to copy
Dirk Engling
2008-12-07 12:04:03 +0000
04e5bac4c3Handle program end more politely
Dirk Engling
2008-12-07 03:50:47 +0000
fa6c870315Renamed OT_FLAG to OT_PEERFLAG to make code easier to read 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
Dirk Engling
2008-12-06 18:45:59 +0000
95b6c3b498Format for full scrapes was not parsed correctly.
Dirk Engling
2008-12-06 16:57:10 +0000
cec9b44738Make mutex_lock_bucket_by_hash generic to any OT_BUCKET_COUNT
Dirk Engling
2008-12-06 00:41:12 +0000
d46a8a5d06Forgot one define READ32
Dirk Engling
2008-12-06 00:40:36 +0000
545dab2c18Tidy up unnecessary includes
Dirk Engling
2008-12-05 21:28:40 +0000
55af66acb2Add specialized vector functions to handle peers in sorted lists Assume that compare_size is a mulptiple of 4 in all non-specialized cases and load int32_t to compare.
Dirk Engling
2008-12-05 20:36:00 +0000
efe40b2726Let's give a damn about syntactical correctness of peer's http strings. It's too expensive on both sides to check and to reject.
Dirk Engling
2008-12-05 20:34:24 +0000
d5caa5786bNow enforce that peers do not come back before our interval by giving out a 'min interval' in responses.
Dirk Engling
2008-12-03 23:25:45 +0000
d021d86940printf is buffered, write not. Use printf for all.
Dirk Engling
2008-12-03 20:49:52 +0000
69f4646df3fix size of 0 issue
Dirk Engling
2008-12-03 20:49:25 +0000
7eb5341c78Add debug code to spot peers that come back too early
Dirk Engling
2008-12-03 20:40:50 +0000
b8d15fe766Add debug code to store peer id
Dirk Engling
2008-12-03 20:40:25 +0000
a6afcf8ab8New peer flag to see, whether peer came from announce or sync
Dirk Engling
2008-12-03 20:39:23 +0000
384028829bAid spotting bad clients...
Dirk Engling
2008-12-03 20:38:25 +0000
dcf8454138Live Sync for peers that do not come back too early.
Dirk Engling
2008-12-01 17:56:53 +0000
c0dab929abThe BIG refactoring [tm]. Too many changes to count them. If it doesn't suite you, revert to last version.
Dirk Engling
2008-11-28 22:21:09 +0000
71b2ffcaa6Fix stats parse code to allow modes with more than 4 characters. Wir wurden ja langsam zum Gespoett der Leute.
Dirk Engling
2008-10-28 00:24:14 +0000
022f3e7455First vector has size 1, not 0 in debug vector
Dirk Engling
2008-10-28 00:23:32 +0000