MCPcopy
hub / github.com/urllib3/urllib3 / proxy_ssl_one

Method proxy_ssl_one

test/with_dummyserver/test_socketlevel.py:1238–1276  ·  view source on GitHub ↗
(listener: socket.socket)

Source from the content-addressed store, hash-verified

1236
1237 def test_connect_reconn(self) -> None:
1238 def proxy_ssl_one(listener: socket.socket) -> None:
1239 sock = listener.accept()[0]
1240
1241 buf = b""
1242 while not buf.endswith(b"\r\n\r\n"):
1243 buf += sock.recv(65536)
1244 s = buf.decode("utf-8")
1245 if not s.startswith("CONNECT "):
1246 sock.send(b"HTTP/1.1 405 Method not allowed\r\nAllow: CONNECT\r\n\r\n")
1247 sock.close()
1248 return
1249
1250 if not s.startswith(f"CONNECT {self.host}:443"):
1251 sock.send(b"HTTP/1.1 403 Forbidden\r\n\r\n")
1252 sock.close()
1253 return
1254
1255 sock.send(b"HTTP/1.1 200 Connection Established\r\n\r\n")
1256 ssl_sock = original_ssl_wrap_socket(
1257 sock,
1258 server_side=True,
1259 keyfile=DEFAULT_CERTS["keyfile"],
1260 certfile=DEFAULT_CERTS["certfile"],
1261 ca_certs=DEFAULT_CA,
1262 )
1263
1264 buf = b""
1265 while not buf.endswith(b"\r\n\r\n"):
1266 buf += ssl_sock.recv(65536)
1267
1268 ssl_sock.send(
1269 b"HTTP/1.1 200 OK\r\n"
1270 b"Content-Type: text/plain\r\n"
1271 b"Content-Length: 2\r\n"
1272 b"Connection: close\r\n"
1273 b"\r\n"
1274 b"Hi"
1275 )
1276 ssl_sock.close()
1277
1278 def echo_socket_handler(listener: socket.socket) -> None:
1279 proxy_ssl_one(listener)

Callers

nothing calls this directly

Calls 4

original_ssl_wrap_socketFunction · 0.85
recvMethod · 0.45
sendMethod · 0.45
closeMethod · 0.45

Tested by

no test coverage detected