summaryrefslogtreecommitdiff
AgeCommit message (Expand)Author
14 daysMake global torrent counter atomic and fix the setter and getterDirk Engling
14 daysPlug in the new per-thread stats counter, also make sure that the ot_clean sleep does not stall tracker exitDirk Engling
14 daysSecond half of moving the stat enum defines to trackerlogicDirk Engling
14 daysPrepare having each thread keep their own stats to avoid data racesDirk Engling
14 daysTurn malloc+memset into callocDirk Engling
14 daysSome more g_now_seconds occurrencesDirk Engling
14 daysForgot some g_now_seconds occurencesDirk Engling
14 daysAll OSes now do have a cheap monotonic clock, so no caching thread is needed. Also add some relative time helpersDirk Engling
14 daysWhile we're at it with the dynamic analyzers, add a tsanDirk Engling
2026-10-27Add test for the revived keep aliveDirk Engling
2026-10-27Fix some tests to match retired stats modes and wrong config file orderingDirk Engling
2026-10-27Add test for the correct order of partial scrapesDirk Engling
2026-10-27Add test for the error packet when a hash is blacklisted (the part I forgot in last commit)Dirk Engling
2026-10-27Add test for the error packet when a hash is blacklistedDirk Engling
2026-10-27Remove enum for a retired stats modeDirk Engling
2026-10-27Clean build artefacts on macos, tooDirk Engling
2026-10-27Add DWANT_KEEPALIVE to integration test flags to test the whole sub systemDirk Engling
2026-10-27Send udp error packet in case of blacklisted torrentDirk Engling
2026-10-27Fix: Forgot to add the actual keep alive flagDirk Engling
2026-10-27Sort info_hashes in a scrape so that the reply forms a valid bencoded dictDirk Engling
2026-10-27Add new test for connection keep aliveDirk Engling
2026-10-27Revive http keep alive to save tcp connection setup costsDirk Engling
2026-10-27retrieve the address of the sending socket for comparison. In jails it might be forced to its primary addressDirk Engling
2026-10-27Adding the actual tests to do aforementioned 'Massively increase coverage by pulling fullscrapes and sending udp packets'Dirk Engling
2026-10-27Massively increase coverage by pulling fullscrapes and sending udp packetsDirk Engling
2026-10-27Fix some sanitizer findings, mostly UB if no accesslist is configured and thread join problemsDirk Engling
2026-10-27add more checkers to the sanitizer and integration check runsDirk Engling
2026-10-26Drop -lz as Makefile.gzip already carries itDirk Engling
2026-10-26Avoid an UB of adding NULL + 0 by keeping an offset instead of advancing the pointer into a vector structDirk Engling
2026-10-26Add integration test and its runnerDirk Engling
2026-10-26replace all calls to sprintf with a format helper that advances a cursor. Also convert the meta-formatter (i.e. results printer) to this schemeDirk Engling
2026-10-26Potentially overlapping areas need memmove, not memcpyDirk Engling
2026-10-26Make sure to not accept mere prefixes of addresses from query stringDirk Engling
2026-10-26With libowfat gone, we don't need to disable the auto free feature for older versionsDirk Engling
2026-10-26Replace libowfat's event waiter with our own abstractionDirk Engling
2026-10-26Add poll/epoll/kqueue wrapper to wait for eventsDirk Engling
2026-10-26Third run of making variable and function names more readable, integer scans and ip parsersDirk Engling
2026-10-26Second run of making variable and function names more readable, urlencoder now matches overall naming schemeDirk Engling
2026-10-26First run of making variable names more readableDirk Engling
2026-10-26Use new fdstate subsystem to store per fd cookie and timeoutDirk Engling
2026-10-26Introduce a sub system that can store io cookies for file descriptors, thread safely soDirk Engling
2026-10-25Factor out the timeout setter, will probably go later once we do the io loop ourselfDirk Engling
2026-10-25Replace libowfat's iobatch with our own smaller (and probably only temporary) ot_batchDirk Engling
2026-10-25Prevent UAF when resizing iobatchesDirk Engling
2026-10-25Add mutex unit testDirk Engling
2026-10-25Be stricter about const char*, Wwrite-strings will warn in the future and we don't want to try to overwrite string literalsDirk Engling
2026-10-25For workqueue tasks, class has to be in the tasktype or no worker will ever claim the task, forgot oneDirk Engling
2026-10-25For workqueue tasks, class has to be in the tasktype or no worker will ever claim the taskDirk Engling
2026-10-25white space fixesDirk Engling
2026-10-25Split options parsing and config code from opentracker.c, it has grown humongousDirk Engling