summaryrefslogtreecommitdiff
path: root/tests
AgeCommit message (Collapse)Author
12 hoursMassively increase coverage by pulling fullscrapes and sending udp packetsDirk Engling
13 hoursadd more checkers to the sanitizer and integration check runsDirk Engling
14 hoursAvoid an UB of adding NULL + 0 by keeping an offset instead of advancing the pointer into a vector structDirk Engling
15 hoursAdd integration test and its runnerDirk Engling
15 hoursreplace 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
18 hoursReplace libowfat's event waiter with our own abstractionDirk Engling
It's with a heavy heart that I remove libowfat as my event library from opentracker. libowfat is what taught opentracker to walk and then fly. The tracker was literally standing on the shoulder of giants when I started writing it in 2006. For its time, the event abstraction was unparalleled and it has held up for many years, and it served the bittorrent community greatly. https://erdgeist.org/gitweb/opentracker/commit/?id=ad472597c569568bad0526d116b601dfcb36638c Unfortunately, it is very likely that libowfat will not be maintained anymore for the foreseeable future, it is already not easy to get its source from upstream and opentracker started receiving bug reports that I can not reasonably answer or patch. Before the project gets more dependent on the limitations of libowfat's current state, I need to teach opentracker to stand on its own feet and fly by itself. I've learned a great deal in the process and have even more respect now for what libowfat pioneered. The path for opentracker is cleared now. Ground work has already been laid in the migration process to support multi threaded http processing while keeping the aggressive reduction of syscalls alive that made the libowfat+opentracker combo so scalable. Here be some dragons, though: Even though there is a unit test suite now, the event loop's rewrite has not been battle tested yet. So you might want to hold up for a bit before jumping on the solo band wagon. What awaits at the end will be a long overdue v1.0, which will be named in honour of Felix.
19 hoursAdd poll/epoll/kqueue wrapper to wait for eventsDirk Engling
19 hoursThird run of making variable and function names more readable, integer scans and ip parsersDirk Engling
20 hoursSecond run of making variable and function names more readable, urlencoder now matches overall naming schemeDirk Engling
21 hoursFirst run of making variable names more readableDirk Engling
24 hoursIntroduce a sub system that can store io cookies for file descriptors, thread safely soDirk Engling
39 hoursReplace libowfat's iobatch with our own smaller (and probably only temporary) ot_batchDirk Engling
41 hoursAdd mutex unit testDirk Engling
42 hoursBe stricter about const char*, Wwrite-strings will warn in the future and we don't want to try to overwrite string literalsDirk Engling
43 hoursDecouple config parsing from binding and worker spawningDirk Engling
* Options are parsed now into a listener description list before binding them at once and starting the workers later * UDP workers can now be configured per connection * socket reuse is now done more sensibly, mcast sockets always reused * Hold-off logic after spawning udp workers removed
2 daysClean up peer re-distribution between single bucket vectors and bucket lists, add testsDirk Engling
2 daysDrop dead test helperDirk Engling
2 daysRemove test for length only mode of the url escaperDirk Engling
2 daysAdd sub system to abstract low level multi platform socket handling ourselvesDirk Engling
3 daysReplace libowfat's ip scanner and formatters with own ownDirk Engling
3 daysAdd tests and build infra for the new ip address parser and formatterDirk Engling
3 daysAdd tests for new blob abstractionDirk Engling
3 daysAdd tests for the url escaperDirk Engling
3 daysAdd tests for the new ranged unsigned int scanner in ot_scanDirk Engling
3 daysImplement a tiny mmap wrapper ourselves, replacing libowfat's wrapperDirk Engling
3 daysfactor out accesslist parser to fix a potential out of bound read and add tests to the accesslist unitDirk Engling
4 daysAdd tests for the hex converterDirk Engling
4 daysAdd the actual test for random ;)Dirk Engling
4 daysUse new entropy fascility and add tests for itDirk Engling
4 daysAdd a unit test harness and a first set of testsDirk Engling
make check builds tests/runner from the modules that link without the io subsystem and runs it.
2024-04-13Add proper parsing for the gzip content encodingDirk Engling
2008-11-28The BIG refactoring [tm]. Too many changes to count them. If it doesn't suite you, revert to last version.erdgeist
2008-10-04added live sync codeerdgeist
added a config file parser added tracker id changed WANT_CLOSED_TRACKER and WANT_BLACKLIST into WANT_ACCESS_WHITE and WANT_ACCESS_BLACK changed WANT_TRACKER_SYNC to WANT_SYNC_BATCH and added WANT_SYNC_LIVE added an option to switch off fullscrapes cleaned up many internal hardcoded values, like PROTO_FLAG,
2007-12-11A simple script that fills up opentracker with some peers, if -DWANT_IP_FROM_QUERY_STRING is specifierderdgeist