#!/usr/bin/env python3 """HTTPS fixture server, with request log for forbidden-origin assertions.""" import functools import http.server import ssl import sys root, port, cert, key = sys.argv[1:] handler = functools.partial(http.server.SimpleHTTPRequestHandler, directory=root) server = http.server.ThreadingHTTPServer(('127.0.0.1', int(port)), handler) context = ssl.SSLContext(ssl.PROTOCOL_TLS_SERVER) context.load_cert_chain(cert, key) server.socket = context.wrap_socket(server.socket, server_side=True) print('ready', flush=True) server.serve_forever()