#!/usr/bin/env python3 """Minimal compact-peer HTTP tracker for the Phase 4 integration test.""" from http.server import BaseHTTPRequestHandler, HTTPServer import socket import struct import sys peer_port = int(sys.argv[1]) body = ( b"d8:intervali1800e5:peers6:" + socket.inet_aton("127.0.0.1") + struct.pack("!H", peer_port) + b"e" ) class Tracker(BaseHTTPRequestHandler): def do_GET(self): self.send_response(200) self.send_header("Content-Type", "text/plain") self.send_header("Content-Length", str(len(body))) self.end_headers() self.wfile.write(body) def log_message(self, fmt, *args): print("REQUEST " + (fmt % args), flush=True) server = HTTPServer(("127.0.0.1", 0), Tracker) print("PORT %d" % server.server_port, flush=True) server.serve_forever()