aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libmproxy/protocol/tcp.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/libmproxy/protocol/tcp.py b/libmproxy/protocol/tcp.py
index d2d21829..5314b577 100644
--- a/libmproxy/protocol/tcp.py
+++ b/libmproxy/protocol/tcp.py
@@ -56,7 +56,9 @@ class TCPHandler(ProtocolHandler):
conns.remove(src.rfile)
# Shutdown connection to the other peer
if dst.ssl_established:
- dst.connection.shutdown()
+ # We can't half-close a connection, so we just close everything here.
+ # Sockets will be cleaned up on a higher level.
+ return
else:
dst.connection.shutdown(socket.SHUT_WR)