commit - d8322e0976a01ded7cd6a255f958f28f4cc597ca
commit + c1f94e6bc9e3217e15a20c82006bf3f5b92aaa78
blob - f341cc88b1c9c39cf914dd193ac8f1a671df85ff
blob + bf4da523d8a6f36c3e1044c0828eafc9b199b52d
--- yah2g.py
+++ yah2g.py
from argparse import ArgumentParser
from email.message import Message
from http import HTTPStatus
-from http.server import HTTPServer, BaseHTTPRequestHandler
+from http.server import ThreadingHTTPServer, BaseHTTPRequestHandler
from urllib.parse import parse_qs, urlparse, urljoin, urlencode, uses_relative, uses_netloc
from contextlib import contextmanager
return ET.tostring(form) + b"\r\n"
-class _HTTPServer(HTTPServer):
+class _HTTPServer(ThreadingHTTPServer):
def __init__(
self,
*args,
self.send_error(HTTPStatus.BAD_REQUEST, "Only gemini:// URLs are supported")
return
- context = ssl.SSLContext()
+ context = ssl.SSLContext(ssl.PROTOCOL_TLS_CLIENT)
context.check_hostname = False
context.verify_mode = ssl.CERT_NONE
with socket.create_connection((parsed.hostname, parsed.port or 1965)) as raw_s: