summaryrefslogtreecommitdiff
AgeCommit message (Expand)Author
4 daysIntroduce a fast path assuming that a tcp connection's payload already has arrived at accept timeDirk Engling
4 daysStart documenting design decisions and measurmentsDirk Engling
4 daysRemove references that you need libowfat to build opentrackerDirk Engling
4 daysgit ignore the poll flavor of the runner, tooDirk Engling
4 daysFix idle tests in presence of an accept filterDirk Engling
4 daysRemove stale xcode build fileDirk Engling
4 daysFix expiry tests under the new accept filtersDirk Engling
4 daysUse accept filter dataready instead of httpready on FreeBSDDirk Engling
4 daysDefer accepts until some data actually is thereDirk Engling
4 daysEnforce the invariant that each socket is only ever expected to be read from or written to, never bothDirk Engling
4 daysDon't treat a full send buffer as an error when sending http. Retry laterDirk Engling
4 daysReduce syscalls and add helper to count themDirk Engling
4 daysAdd an http load generatorDirk Engling
4 daysReduce number of per connection sys callsDirk Engling
4 daysCheck for free port in the udp integration test, also speed it up by a bitDirk Engling
4 daysConsolidate all tcp/http tear down into a single http_close function to prevent a rare UAF for expiring connectionsDirk Engling
5 daysBuild everything in one sweep, without intermediate object filesDirk Engling
5 daysadd wake-up tester that helped figuring out how to tickle hanging udp readersDirk Engling
5 daysRevert last wake-up experiment. Having each udp worker wake up once a second to check if the tracker stops is wastefulDirk Engling
5 daysFix a test that would over-report success rate when losing the race for cycles to the test targetDirk Engling
5 daysLivesync now also gets proper deinit codeDirk Engling
5 daysWith more workers blockingly waiting on udp sockets, we need to keep track of all sockets to shut them down on exitDirk Engling
6 daysDefault udp workers to 1, as it is the most sane choice everywhere, also reflect the new udp parallelism in the man pagesDirk Engling
6 daysLet the load tester log losses to better gauge performanceDirk Engling
6 daysAdd load tests to sanitize check the trackerlogic, based on udp requestsDirk Engling
6 daysPerformance improvement, where it works: Let different udp worker threads have their own socketDirk Engling
7 daysThe main event loop(s) now also catch an EINTR and return instead of blockingDirk Engling
7 daysAdd concurrency testDirk Engling
7 daysMake global torrent counter atomic and fix the setter and getterDirk Engling
7 daysPlug in the new per-thread stats counter, also make sure that the ot_clean sleep does not stall tracker exitDirk Engling
7 daysSecond half of moving the stat enum defines to trackerlogicDirk Engling
7 daysPrepare having each thread keep their own stats to avoid data racesDirk Engling
7 daysTurn malloc+memset into callocDirk Engling
7 daysSome more g_now_seconds occurrencesDirk Engling
7 daysForgot some g_now_seconds occurencesDirk Engling
7 daysAll OSes now do have a cheap monotonic clock, so no caching thread is needed. Also add some relative time helpersDirk Engling
7 daysWhile we're at it with the dynamic analyzers, add a tsanDirk Engling
7 daysAdd test for the revived keep aliveDirk Engling
7 daysFix some tests to match retired stats modes and wrong config file orderingDirk Engling
7 daysAdd test for the correct order of partial scrapesDirk Engling
7 daysAdd test for the error packet when a hash is blacklisted (the part I forgot in last commit)Dirk Engling
7 daysAdd test for the error packet when a hash is blacklistedDirk Engling
7 daysRemove enum for a retired stats modeDirk Engling
7 daysClean build artefacts on macos, tooDirk Engling
7 daysAdd DWANT_KEEPALIVE to integration test flags to test the whole sub systemDirk Engling
7 daysSend udp error packet in case of blacklisted torrentDirk Engling
7 daysFix: Forgot to add the actual keep alive flagDirk Engling
7 daysSort info_hashes in a scrape so that the reply forms a valid bencoded dictDirk Engling
7 daysAdd new test for connection keep aliveDirk Engling
7 daysRevive http keep alive to save tcp connection setup costsDirk Engling