summaryrefslogtreecommitdiff
AgeCommit message (Expand)Author
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
7 daysretrieve the address of the sending socket for comparison. In jails it might be forced to its primary addressDirk Engling
7 daysAdding the actual tests to do aforementioned 'Massively increase coverage by pulling fullscrapes and sending udp packets'Dirk Engling
7 daysMassively increase coverage by pulling fullscrapes and sending udp packetsDirk Engling
7 daysFix some sanitizer findings, mostly UB if no accesslist is configured and thread join problemsDirk Engling
8 daysadd more checkers to the sanitizer and integration check runsDirk Engling
8 daysDrop -lz as Makefile.gzip already carries itDirk Engling
8 daysAvoid an UB of adding NULL + 0 by keeping an offset instead of advancing the pointer into a vector structDirk Engling
8 daysAdd integration test and its runnerDirk Engling
8 daysreplace 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
8 daysPotentially overlapping areas need memmove, not memcpyDirk Engling
8 daysMake sure to not accept mere prefixes of addresses from query stringDirk Engling
8 daysWith libowfat gone, we don't need to disable the auto free feature for older versionsDirk Engling
8 daysReplace libowfat's event waiter with our own abstractionDirk Engling
8 daysAdd poll/epoll/kqueue wrapper to wait for eventsDirk Engling
8 daysThird run of making variable and function names more readable, integer scans and ip parsersDirk Engling
8 daysSecond run of making variable and function names more readable, urlencoder now matches overall naming schemeDirk Engling
8 daysFirst run of making variable names more readableDirk Engling
8 daysUse new fdstate subsystem to store per fd cookie and timeoutDirk Engling
8 daysIntroduce a sub system that can store io cookies for file descriptors, thread safely soDirk Engling
9 daysFactor out the timeout setter, will probably go later once we do the io loop ourselfDirk Engling
9 daysReplace libowfat's iobatch with our own smaller (and probably only temporary) ot_batchDirk Engling
9 daysPrevent UAF when resizing iobatchesDirk Engling
9 daysAdd mutex unit testDirk Engling
9 daysBe stricter about const char*, Wwrite-strings will warn in the future and we don't want to try to overwrite string literalsDirk Engling
9 daysFor workqueue tasks, class has to be in the tasktype or no worker will ever claim the task, forgot oneDirk Engling
9 daysFor workqueue tasks, class has to be in the tasktype or no worker will ever claim the taskDirk Engling
9 dayswhite space fixesDirk Engling
9 daysSplit options parsing and config code from opentracker.c, it has grown humongousDirk Engling
9 daysFix build. Last commit was too huge ;)Dirk Engling
9 daysDecouple config parsing from binding and worker spawningDirk Engling
9 daysClean up peer re-distribution between single bucket vectors and bucket lists, add testsDirk Engling