summaryrefslogtreecommitdiffstats
path: root/keystone/common/bufferedhttp.py
diff options
context:
space:
mode:
Diffstat (limited to 'keystone/common/bufferedhttp.py')
-rw-r--r--keystone/common/bufferedhttp.py28
1 files changed, 12 insertions, 16 deletions
diff --git a/keystone/common/bufferedhttp.py b/keystone/common/bufferedhttp.py
index 967161d9..ecc19b33 100644
--- a/keystone/common/bufferedhttp.py
+++ b/keystone/common/bufferedhttp.py
@@ -107,7 +107,8 @@ class BufferedHTTPConnection(HTTPConnection):
def http_connect(ipaddr, port, device, partition, method, path,
- headers=None, query_string=None, ssl=False):
+ headers=None, query_string=None, ssl=False, key_file=None,
+ cert_file=None):
"""
Helper function to create an HTTPConnection object. If ssl is set True,
HTTPSConnection will be used. However, if ssl=False, BufferedHTTPConnection
@@ -122,26 +123,18 @@ def http_connect(ipaddr, port, device, partition, method, path,
:param headers: dictionary of headers
:param query_string: request query string
:param ssl: set True if SSL should be used (default: False)
+ :param key_file Private key file (not needed if cert_file has private key)
+ :param cert_file Certificate file (Keystore)
:returns: HTTPConnection object
"""
- if ssl:
- conn = HTTPSConnection('%s:%s' % (ipaddr, port))
- else:
- conn = BufferedHTTPConnection('%s:%s' % (ipaddr, port))
path = quote('/' + device + '/' + str(partition) + path)
- if query_string:
- path += '?' + query_string
- conn.path = path
- conn.putrequest(method, path)
- if headers:
- for header, value in headers.iteritems():
- conn.putheader(header, value)
- conn.endheaders()
- return conn
+ return http_connect_raw(ipaddr, port, device, partition, method, path,
+ headers, query_string, ssl, key_file, cert_file)
def http_connect_raw(ipaddr, port, method, path, headers=None,
- query_string=None, ssl=False):
+ query_string=None, ssl=False, key_file=None,
+ cert_file=None):
"""
Helper function to create an HTTPConnection object. If ssl is set True,
HTTPSConnection will be used. However, if ssl=False, BufferedHTTPConnection
@@ -154,10 +147,13 @@ def http_connect_raw(ipaddr, port, method, path, headers=None,
:param headers: dictionary of headers
:param query_string: request query string
:param ssl: set True if SSL should be used (default: False)
+ :param key_file Private key file (not needed if cert_file has private key)
+ :param cert_file Certificate file (Keystore)
:returns: HTTPConnection object
"""
if ssl:
- conn = HTTPSConnection('%s:%s' % (ipaddr, port))
+ conn = HTTPSConnection('%s:%s' % (ipaddr, port), key_file=key_file,
+ cert_file=cert_file)
else:
conn = BufferedHTTPConnection('%s:%s' % (ipaddr, port))
if query_string: