Dirk Engling
e8d385f176
Move _GNU_SOURCE declaration further to the top, so recursive inclusion of stdio does not ignore the macro
7 months ago
Dirk Engling
33bd2c9094
Add support for zstd
7 months ago
Dirk Engling
160ba08074
Only have huge downloads (aka chunked) be application/octet-stream
7 months ago
Dirk Engling
b56e648b5e
Let our fullscrapes have a binary content-type
7 months ago
Dirk Engling
ff03fd7449
chrome does not accept chunked gzip encoding for http/1.0 protocol version
7 months ago
Dirk Engling
d3985b00b5
Remove CVS version tags, they did not work anymore after moving to git
7 months ago
Dirk Engling
a6c4766348
define _GNU_SOURCE to silence warning about asprintf
7 months ago
Dirk Engling
a4161f911f
Use bzero instead of the new iob_init for older libowfats
7 months ago
Dirk Engling
f8637baaeb
Allow the use of iob_init if the new libowfat is not yet available
7 months ago
Dirk Engling
7c633c259e
clang-format
7 months ago
Dirk Engling
6ae819ae10
remove debug fprintfs used to catch a bug
7 months ago
Dirk Engling
fceffdefba
Call io_dontwantread only once on a socket
7 months ago
Dirk Engling
57f859728d
Initialise io_batches with their appropiate init function
7 months ago
Dirk Engling
a3d27dff8c
Remove unused macro
7 months ago
Dirk Engling
638ca0f56c
Use asprintf to allocate header instead of fixed array
7 months ago
Dirk Engling
3a2a711a29
Fix type warnings in debug strings
7 months ago
Dirk Engling
bd4992435c
Add proper parsing for the gzip content encoding
7 months ago
Dirk Engling
3a6d99dd46
Better track current iobatch
7 months ago
Dirk Engling
1a70d9f9ef
First shot on chunked transfers
7 months ago
Dirk Engling
1b976863fc
white space
7 months ago
Dirk Engling
aedd7e30cb
Silence warning on older compilers
7 months ago
Dirk Engling
18554498c2
Whitespace fix
7 months ago
Dirk Engling
d9a5f04675
Return peer from both address families on announce
7 months ago
Dirk Engling
2afc4893bf
Prepare opentracker for dual stack capabilities
7 months ago
Dirk Engling
aca3ee0ac8
Prevent proxied ips of the wrong flavour to poison our clients
7 months ago
Dirk Engling
543ab73017
Allow networks to be used instead of ip addresses when blessing is involved
8 months ago
Dirk Engling
6604d65779
Some clients have added the /stats URL as /announce URL and cause a lot of expensive operations. Prevent that
8 months ago
Dirk Engling
3168071175
Fix two issues when splitting an iovec to large iobatches
4 years ago
Dirk Engling
397cd035a4
Turn mmaps into malloc
4 years ago
Dirk Engling
95f1780f0b
Split huge iovecs over multiple io_batches
4 years ago
Dirk Engling
9c7be324f5
break belongs inside the guard
8 years ago
Dirk Engling
d1e6e4486c
incorporate a more verbose ascii dump, provided by Tom <tom@foscore.com>
8 years ago
Dirk Engling
a215479d1a
Accept was counted twice
9 years ago
erdgeist
954f5029df
Fix immediate overwrite in the X-forwarded-for passing case. Thanks to Alexander Luetjen.
11 years ago
denis
7d36ea2732
new flag to enforce gzip even if client did not request it
13 years ago
erdgeist
05e0de1a5f
Add a top100 for most popular torrents
13 years ago
erdgeist
730d4bb6ae
Reset http request input array on error case
14 years ago
erdgeist
d42bf5a031
** struct ot_workstruct gets ritcher (and will become even ritcher soon).
...
This is where we encapsulate all per-request data from peer to hash to peer_id, so that it is
available everywhere without passing hundreds of pointers down the stack. Most functions that
do work down the stack now accept an ot_workstruct and some flags. So it can end up in the
stats/event-handler where it will be the default parameter in the future.
** peer_id is now being copied by default and moved to ot_workstruct
So it is available in stats and subsequent functions.
** sync scrape madness is gone
SYNC_SCRAPE was intended to sync tracker state that would normally be lost on restarts i.e.
downloaded counts per torrent. The way was to push it in the tracker cloud after finding all
neighbouring trackers.
This is madness. It never was tested and can be done per tracker by fetching
stats/mode=statedump from time to time and starting opentracker with the -l option later.
** livesync thread has its own ot_workstruct now
So it can behave like ot_udp and ot_http against trackerlogic.c and get rid of the first half
of the embarrassing global variables. The sending half will be fixed soon [tm].
** stats can log completed events
The author recognizes the needs of original content distributors to keep track of the amount
of times a work has been downloaded. While not feasible and used on openbittorrent and other
open and anonymous tracker installations, a tracker user can now choose to send those events
to syslog.
15 years ago
erdgeist
3baa1abc56
Fix white spaces
15 years ago
erdgeist
85e6880233
Make opentracker's user runtime configurable. Also add more debug output to aid finding problems.
15 years ago
erdgeist
a7cd2084df
Fixed including another error message
15 years ago
erdgeist
f3c0359876
Make header parsing more efficient, prepare multithreading and keep-alive.
15 years ago
erdgeist
1665c54179
prevent infinite loop when looking for X-Forwarded-For: Headers
15 years ago
erdgeist
c27631e516
Reenable statedump
15 years ago
erdgeist
0bf88427c6
Add spotting woodpeckers, thanks to Vasya P. again
15 years ago
erdgeist
4c4303a156
Temporary feature: log amount of numwants. See if we can save traffic if we reduce max numwant to something less than 200
15 years ago
erdgeist
478884660f
Enable limiting fullscrapes to only every 5 minutes per IP
15 years ago
erdgeist
6073127ad0
Add some subnet debugging features
15 years ago
erdgeist
3afbbc37d0
Don't default the incoming port to 6881 but rather use 0 to indicate a less than valid announce
16 years ago
erdgeist
65d7d9b89c
Allow /stats to be located anywhere in your trackers path
16 years ago