Initial commit: multi-peer torrent download engine

Reactor/loop-pool engine with TCP/µTP/MSE transports, per-connection
pipelining, priority-driven piece selection with endgame, and the Python
FFI test harness.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
ookami125 2026-06-21 23:12:32 -04:00
commit d8208685a2
55 changed files with 9989 additions and 0 deletions

90
interop/clients.json Normal file
View file

@ -0,0 +1,90 @@
[
{
"name": "libtorrent-plain-tcp",
"host": "seed-libtorrent-plain",
"port": 6881,
"utp": 0,
"encryption": 0,
"fallback": 0
},
{
"name": "libtorrent-mse-tcp",
"host": "seed-libtorrent-mse",
"port": 6882,
"utp": 0,
"encryption": 2,
"fallback": 0
},
{
"name": "libtorrent-utp",
"host": "seed-libtorrent-utp",
"port": 6883,
"utp": 1,
"encryption": 0,
"fallback": 0
},
{
"name": "libtorrent-utp-mse",
"host": "seed-libtorrent-utp-mse",
"port": 6884,
"utp": 1,
"encryption": 1,
"fallback": 0
},
{
"name": "transmission-tcp",
"host": "seed-transmission",
"port": 6891,
"utp": 0,
"encryption": 0,
"fallback": 0
},
{
"name": "transmission-utp",
"host": "seed-transmission-utp",
"port": 6896,
"utp": 1,
"encryption": 0,
"fallback": 0
},
{
"name": "transmission-mse-tcp",
"host": "seed-transmission-mse",
"port": 6897,
"utp": 0,
"encryption": 2,
"fallback": 0
},
{
"name": "aria2-tcp",
"host": "seed-aria2",
"port": 6892,
"utp": 0,
"encryption": 0,
"fallback": 0
},
{
"name": "qbittorrent-tcp",
"host": "seed-qbittorrent",
"port": 6893,
"utp": 0,
"encryption": 0,
"fallback": 0
},
{
"name": "deluge-tcp",
"host": "seed-deluge",
"port": 6894,
"utp": 0,
"encryption": 0,
"fallback": 0
},
{
"name": "rtorrent-tcp",
"host": "seed-rtorrent",
"port": 6895,
"utp": 0,
"encryption": 0,
"fallback": 0
}
]