summaryrefslogtreecommitdiffstats
path: root/src/lib/Bcfg2/Proxy.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/Bcfg2/Proxy.py')
-rw-r--r--src/lib/Bcfg2/Proxy.py11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/lib/Bcfg2/Proxy.py b/src/lib/Bcfg2/Proxy.py
index 62b83d0b4..f6db66a93 100644
--- a/src/lib/Bcfg2/Proxy.py
+++ b/src/lib/Bcfg2/Proxy.py
@@ -24,6 +24,7 @@ from Bcfg2.Compat import httplib, xmlrpclib, urlparse, quote_plus
version = sys.version_info[:2]
has_py26 = version >= (2, 6)
+has_py32 = version >= (3, 2)
__all__ = ["ComponentProxy",
"RetryMethod",
@@ -173,8 +174,12 @@ class SSLHTTPConnection(httplib.HTTPConnection):
"""
if not has_py26:
httplib.HTTPConnection.__init__(self, host, port, strict)
- else:
+ elif not has_py32:
httplib.HTTPConnection.__init__(self, host, port, strict, timeout)
+ else:
+ # the strict parameter is deprecated.
+ # HTTP 0.9-style "Simple Responses" are not supported anymore.
+ httplib.HTTPConnection.__init__(self, host, port, timeout=timeout)
self.key = key
self.cert = cert
self.ca = ca
@@ -309,7 +314,7 @@ class XMLRPCTransport(xmlrpclib.Transport):
errcode = response.status
errmsg = response.reason
headers = response.msg
- except (socket.error, SSL_ERROR):
+ except (socket.error, SSL_ERROR, httplib.BadStatusLine):
err = sys.exc_info()[1]
raise ProxyError(xmlrpclib.ProtocolError(host + handler,
408,
@@ -326,6 +331,7 @@ class XMLRPCTransport(xmlrpclib.Transport):
return self.parse_response(response)
if sys.hexversion < 0x03000000:
+ # pylint: disable=E1101
def send_request(self, host, handler, request_body, debug):
""" send_request() changed significantly in py3k."""
conn = self.make_connection(host)
@@ -334,6 +340,7 @@ class XMLRPCTransport(xmlrpclib.Transport):
self.send_user_agent(conn)
self.send_content(conn, request_body)
return conn
+ # pylint: enable=E1101
def ComponentProxy(url, user=None, password=None, key=None, cert=None, ca=None,