aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMaximilian Hils <git@maximilianhils.com>2015-02-05 16:46:55 +0100
committerMaximilian Hils <git@maximilianhils.com>2015-02-05 16:46:55 +0100
commit52d696df3d23a2ef1d32131752634d97b7fc965c (patch)
tree282bbdca99d8995148efd1c179c83c18233997b8
parent310fb18aac972123e0b25e618978d4dce7031078 (diff)
downloadmitmproxy-52d696df3d23a2ef1d32131752634d97b7fc965c.tar.gz
mitmproxy-52d696df3d23a2ef1d32131752634d97b7fc965c.tar.bz2
mitmproxy-52d696df3d23a2ef1d32131752634d97b7fc965c.zip
fix ssl shutdown in tcp mode, refs #464
-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)