Dirk Engling
8a870f3d0a
Add spotting woodpeckers, thanks to Vasya P. again
2009-09-02 02:18:33 +00:00
Dirk Engling
bb1e76c1a4
Order 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).
2009-07-14 20:51:14 +00:00
Dirk Engling
2aca3aafcf
Make attempts to access to unauthorized torrents more verbose.
2009-07-04 20:14:03 +00:00
Dirk Engling
0c0a4533b7
Fixed an incorrect peer count in udp responses. Credits to Theron Lewis.
2009-06-28 23:11:13 +00:00
Dirk Engling
b6fdc5433a
Allow /stats to be located anywhere in your trackers path
2009-06-17 15:06:31 +00:00
Dirk Engling
87b156262d
include overall completed count in stats
2009-03-24 16:55:28 +00:00
Dirk Engling
a4af3583f2
Fix white spaces
...
Introduce loading tracker states with -l
Alter tracker state to a human readable form
2009-03-17 23:57:19 +00:00
Dirk Engling
abe840d529
Add 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).
2009-03-04 14:35:21 +00:00
Dirk Engling
7628ed7201
Reset delta_torrentcount to zero on each pass
2009-02-20 12:31:55 +00:00
Dirk Engling
57b8f256d5
Forgot to notify central counter about torrent removal
2009-02-20 11:07:30 +00:00
Dirk Engling
bf362a914d
Reverse logic... do only sync those NOT coming from multi cast
2009-02-03 16:45:44 +00:00
Dirk Engling
b73fc5042c
Fix 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.
2009-01-16 04:17:22 +00:00
Dirk Engling
eb98ff8fe3
We sent an incorrect reply dictionary vor v6 announces
2009-01-15 16:20:18 +00:00
Dirk Engling
6337649b08
V6
2009-01-13 22:41:16 +00:00
Dirk Engling
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.
2009-01-02 08:57:49 +00:00
Dirk Engling
e6ceb56796
Fix badly formed bencoded answer to stopped events
2008-12-30 18:40:09 +00:00
Dirk Engling
d0c417d9f3
Fix: Did not time stamp a torrent correctly, that once timed out and came back to life
2008-12-11 11:48:34 +00:00
Dirk Engling
32edd0dff8
Fix: auto increment in += is not a post increment...
2008-12-07 13:14:24 +00:00
Dirk Engling
efce908bbc
Used wrong variable as offset into hash to copy
2008-12-07 12:04:03 +00:00
Dirk Engling
04e5bac4c3
Handle program end more politely
2008-12-07 03:50:47 +00:00
Dirk Engling
fa6c870315
Renamed 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
2008-12-06 18:45:59 +00:00
Dirk Engling
d5caa5786b
Now enforce that peers do not come back before our interval by giving out a 'min interval' in responses.
2008-12-03 23:25:45 +00:00
Dirk Engling
d021d86940
printf is buffered, write not. Use printf for all.
2008-12-03 20:49:52 +00:00
Dirk Engling
7eb5341c78
Add debug code to spot peers that come back too early
2008-12-03 20:40:50 +00:00
Dirk Engling
dcf8454138
Live Sync for peers that do not come back too early.
2008-12-01 17:56:53 +00:00
Dirk Engling
c0dab929ab
The BIG refactoring [tm]. Too many changes to count them. If it doesn't suite you, revert to last version.
2008-11-28 22:21:09 +00:00
Dirk Engling
c8daa7bf86
Add stats about when peers renew their announces.
2008-11-03 01:26:37 +00:00
Dirk Engling
7dcd727ce6
Whitespace fixes
2008-10-28 01:27:21 +00:00
Dirk Engling
7a180be215
release pools only after all other services have been stopped.
2008-10-17 15:21:47 +00:00
Denis Ahrens
779df22409
only sync when the peer is actually added to the first pool. this saves ca. 40% syncdata
2008-10-07 02:09:38 +00:00
Dirk Engling
3e0cec3269
Bugfix: overwrote bencoded data with udp reply data when sending an event=stopped
2008-10-06 19:43:52 +00:00
Dirk Engling
e076dab883
added live sync code
...
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-10-04 05:40:48 +00:00
Denis Ahrens
4cd9d33d7c
send out the total downloaders for a announce response
2008-08-30 00:05:44 +00:00
Dirk Engling
4ee5fe81c7
Fix endianess issues, also obey number of peers requested in udp announces
2008-02-05 01:55:06 +00:00
Dirk Engling
e767fae72a
Introduce some kind of versioning
2007-12-20 05:59:34 +00:00
Dirk Engling
0dfe70e375
Fix include for iovecs
2007-12-03 01:20:27 +00:00
Dirk Engling
5b3eb23f5f
Drop ot_{byte,word,dword} and use uint{8,16,32}_t, also simplify includes
2007-12-03 01:06:33 +00:00
Dirk Engling
b26f91152d
Fixed a bug where we forgot to stamp torrents that are not new.
2007-11-28 22:52:35 +00:00
Dirk Engling
98491c70b6
Fixing mmap allocation went to ot_mutex.c. Also startup new sync thread.
2007-11-21 01:57:03 +00:00
Dirk Engling
032224f150
Cleanup now moved to its own thread, too
2007-11-19 21:10:53 +00:00
Dirk Engling
f03b2740dd
Moving accesslist stuff to its own object
2007-11-12 04:38:43 +00:00
Dirk Engling
0bc163060e
Full scrape moves to its own object
2007-11-12 01:38:54 +00:00
Dirk Engling
6e77a7563a
Fixed a forgotten unlock and a messed up string pointer
2007-11-06 12:20:32 +00:00
Dirk Engling
c718b15168
Fixed warnings about newlines at end of file
2007-11-06 12:03:11 +00:00
Dirk Engling
fed78043a6
No one can get access to buckets now without locking them. Also split up the trackerlogic.c-monster in functional sub-units. HEADS UP: this code is untested and not considered stable.
2007-11-06 11:58:12 +00:00
Dirk Engling
44cbe3de53
Make to_hex thread safe. Get rid off old /24 counting code. Protect more bucket accesses by locks.
2007-11-06 03:21:03 +00:00
Dirk Engling
ee8369dbcf
We do now use the tools for locking buckets in order to prepare MT code
2007-11-06 01:29:57 +00:00
Dirk Engling
472f8469d2
Introduce configuration dependent number of parameters in a nicer way
2007-11-02 13:13:03 +00:00
Dirk Engling
f37e510592
Reenabled syncing
2007-10-29 17:22:05 +00:00
Dirk Engling
df30bc8484
Number of buckets is 1024 now
...
Clean all torrents now only cleans one bucket at a time
All torrents that are being worked upon in an announce are being cleaned on demoand
torrent's peer lists now keep extra counts for seeds and peers to speed up scrape and announce
Sync has gone for now. I will think up a new way to implement. The old one was way to slow.
2007-10-27 14:06:07 +00:00