Dirk Engling
c37d25fd75
The expensive DMEM stats is gone. No need for it, too much potential to DOS.
16 years ago
Dirk Engling
2e2c1762d3
Move stats out of opentracker.c, also have an own file handle udp requests.
16 years ago
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.
16 years ago
Dirk Engling
9ee006d393
Cleaned up stats return format. Also reflect APPI changes due to MT code in trackerlogic.{c,h}
16 years ago
Dirk Engling
472f8469d2
Introduce configuration dependent number of parameters in a nicer way
16 years ago
Dirk Engling
a2f3ab87b0
The last experiment failed. No more accept deferral
16 years ago
Dirk Engling
6c8a69da19
Trying to accept connections only when data has come in. This is an experiment.
16 years ago
Dirk Engling
1b467d186c
Allow for more than one admin ip address
16 years ago
Dirk Engling
66b21d1e28
Add more full scrape stats
16 years ago
Dirk Engling
f37e510592
Reenabled syncing
16 years ago
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.
16 years ago
Dirk Engling
7075730766
some clients chose to accidently send negative numwants
16 years ago
Dirk Engling
f2f93d093f
Accept clients that forget to spell announce at all...
16 years ago
Dirk Engling
d16c925901
This uTorrent/1600 client requires some... measures :/ I dont like the workaround.
16 years ago
Dirk Engling
8b81b12af6
Now measure the time a clean_all_torrents takes
16 years ago
Dirk Engling
df85d516c8
assume anything looking like GET /a to be an announce...
16 years ago
Dirk Engling
c3eaa46d8f
Last fix was not enough to get rid off those 1600er buggers.
16 years ago
Dirk Engling
75d96f1f50
Work around the stupid utorrent 1600 bug. That'll be removed after a while.
16 years ago
Dirk Engling
9268f32200
Now the Holzhammer: GET /an is announce, GET /sc is scrape. Period.
16 years ago
Dirk Engling
b56035424e
now accept more classes of announce fuckups
16 years ago
Dirk Engling
ec5395b57c
Just one more typo
16 years ago
Dirk Engling
7149cb5600
Just one more typo
16 years ago
Dirk Engling
f1ad491e66
Work around more typos that might end up in torrent files as announce urls
16 years ago
Dirk Engling
d5839b8407
Debug code sometimes copied too much data
16 years ago
Dirk Engling
f2e615720b
Fixed one leak from struct_http
16 years ago
Dirk Engling
5f35e4bef7
Be even more stupidistas-tolerant
16 years ago
Dirk Engling
c69e375393
Fix debug output
16 years ago
Dirk Engling
0da6f316d6
Enable _DEBUG_HTTPERROR to avoid warning...
16 years ago
Dirk Engling
6de5b8544a
Include time since startup in full scrape debug output
16 years ago
Dirk Engling
1a864b16c1
Now limit full scrape to requests sending exactly "GET /scrape HTTP/"
16 years ago
Dirk Engling
d3f8013a18
Introducing multiscrape
16 years ago
Dirk Engling
463aabe5f7
Prevent url-decoding for debug by using a temp buffer
16 years ago
Dirk Engling
33530a2ac6
Those stupid "announce ?info_hash" torrents get really annoying. Fix it in announce and scrape.
16 years ago
Dirk Engling
e0f88d7545
be more verbose about what full scrape consumers deliver in their http requests
16 years ago
Dirk Engling
8c3624ce9d
give opentracker the missing header file
16 years ago
Dirk Engling
dd7c0a3cab
Must not dealloc mmaped buffers with free()
16 years ago
Dirk Engling
61204221c1
Fix misunderstandig of what libowfat thinks are seconds and what I did...
16 years ago
Dirk Engling
cafb0d45fe
Since array and io_batch are in a union, and we also have time-outing writable sockets, we need to mark, which of the union is used. Also remove the blessed flag from struct http, since its rarely used and can be done in a seperate memcmp.
16 years ago
Dirk Engling
53054700c8
Cannot access members after they are freed :/
16 years ago
Dirk Engling
2c3b4e3de7
Save a lot of work when skipping through uninteresting http request parameters
16 years ago
Dirk Engling
1d4eb17452
Increase send timeout. Also use an own variable for that.
16 years ago
Dirk Engling
23465c215a
io_timeout is absolute, not relative :/
16 years ago
Dirk Engling
7d4db8015d
Free iobatches on timeout
16 years ago
Dirk Engling
938d063919
HEADS UP: you need to check out the latest libowfat! Huge allocations are now taken from mmap()ed regions, not from heap anymore
16 years ago
Dirk Engling
962ad63424
Sockets we write to now do also timeout
16 years ago
Dirk Engling
5b82b40439
Exclude empty torrents from full scrape, also try to shrink full scrape buffer after it is full
16 years ago
Dirk Engling
9ffe557e6f
fixed line breaks in log
16 years ago
Dirk Engling
1815dd3e53
Log all expansive operations to stderr
16 years ago
Dirk Engling
854c21cece
Most open trackers do not have the problem of not being called often enough.. so do not introduce an extra timeout when waiting for activity. That also removes one of the last extraneous gettimeofday calls
16 years ago
Dirk Engling
7a3ddcfbce
since gettimeofday is rather expansive, we do only fetch time once in a 5 second period, when we are delivered a SIGALRM.
16 years ago