summaryrefslogtreecommitdiff
path: root/docker
diff options
context:
space:
mode:
authorSVN-Git Migration <python-modules-team@lists.alioth.debian.org>2015-10-08 11:55:19 -0700
committerSVN-Git Migration <python-modules-team@lists.alioth.debian.org>2015-10-08 11:55:19 -0700
commit7cd7ca7e903ee2dfb1a91ec118f8653b2310ec7d (patch)
tree421a6ed086ffa058221bb07911193b7c52295c68 /docker
parentdbb06b3ad559090aee9d0de2bd08355ac090fe4a (diff)
Imported Upstream version 0.5.3
Diffstat (limited to 'docker')
-rw-r--r--docker/client.py15
-rw-r--r--docker/version.py2
2 files changed, 14 insertions, 3 deletions
diff --git a/docker/client.py b/docker/client.py
index 1ff43cc..4ff91d8 100644
--- a/docker/client.py
+++ b/docker/client.py
@@ -259,9 +259,20 @@ class Client(requests.Session):
def _get_raw_response_socket(self, response):
self._raise_for_status(response)
if six.PY3:
- return response.raw._fp.fp.raw._sock
+ sock = response.raw._fp.fp.raw._sock
else:
- return response.raw._fp.fp._sock
+ sock = response.raw._fp.fp._sock
+ try:
+ # Keep a reference to the response to stop it being garbage
+ # collected. If the response is garbage collected, it will close
+ # TLS sockets.
+ sock._response = response
+ except AttributeError:
+ # UNIX sockets can't have attributes set on them, but that's fine
+ # because we won't be doing TLS over them
+ pass
+
+ return sock
def _stream_helper(self, response):
"""Generator for data coming from a chunked-encoded HTTP response."""
diff --git a/docker/version.py b/docker/version.py
index abe1e1c..f4c4f3f 100644
--- a/docker/version.py
+++ b/docker/version.py
@@ -1 +1 @@
-version = "0.5.1"
+version = "0.5.3"