summaryrefslogtreecommitdiff
path: root/swiftclient/utils.py
diff options
context:
space:
mode:
authorTristan Cacqueray <tristan.cacqueray@enovance.com>2014-01-24 17:40:16 +0100
committerTristan Cacqueray <tristan.cacqueray@enovance.com>2014-02-12 13:21:26 +0100
commitb182112719ab87942472e44aa3446ea0eb19a289 (patch)
tree8663d755145df6b64bc6b766866ebdb06639119a /swiftclient/utils.py
parent9b73547b7de004fe623e454c425e9deee5d3d0ca (diff)
downloadpython-swiftclient-b182112719ab87942472e44aa3446ea0eb19a289.tar.gz
Port to python-requests
Currently, httplib implementation does not support SSL certificate verification. This patch fixes this. Note that ssl compression parameter and 100-continue thing is still missing from requests, though those are lower priority. Requests now takes care of: * proxy configuration (get_environ_proxies), * chunked encoding (with data generator), * bulk uploading (with files dictionary), * SSL certificate verification (with 'insecure' and 'cacert' parameter). This patch have been tested with requests 1.1.0 (CentOS 6) and requests 2.2.1 (current version). Change-Id: Ib5de962f4102d57c71ad85fd81a615362ef175dc Closes-Bug: #1199783 DocImpact SecurityImpact
Diffstat (limited to 'swiftclient/utils.py')
-rw-r--r--swiftclient/utils.py50
1 files changed, 0 insertions, 50 deletions
diff --git a/swiftclient/utils.py b/swiftclient/utils.py
index a74eada..a038dcc 100644
--- a/swiftclient/utils.py
+++ b/swiftclient/utils.py
@@ -14,23 +14,6 @@
# limitations under the License.
"""Miscellaneous utility functions for use with Swift."""
-import sys
-import os
-
-_ver = sys.version_info
-
-#: Python 2.x?
-is_py2 = (_ver[0] == 2)
-
-#: Python 3.x?
-is_py3 = (_ver[0] == 3)
-
-if is_py2:
- from urllib import getproxies, proxy_bypass
-elif is_py3:
- from urllib.request import getproxies, proxy_bypass
-
-
TRUE_VALUES = set(('true', '1', 'yes', 'on', 't', 'y'))
@@ -72,36 +55,3 @@ def prt_bytes(bytes, human_flag):
bytes = '%12s' % bytes
return(bytes)
-
-
-# get_environ_proxies function, borrowed from python Requests
-# (www.python-requests.org)
-def get_environ_proxies(netloc):
- """Return a dict of environment proxies."""
-
- get_proxy = lambda k: os.environ.get(k) or os.environ.get(k.upper())
-
- # First check whether no_proxy is defined. If it is, check that the URL
- # we're getting isn't in the no_proxy list.
- no_proxy = get_proxy('no_proxy')
-
- if no_proxy:
- # We need to check whether we match here. We need to see if we match
- # the end of the netloc, both with and without the port.
- no_proxy = no_proxy.replace(' ', '').split(',')
-
- for host in no_proxy:
- if netloc.endswith(host) or netloc.split(':')[0].endswith(host):
- # The URL does match something in no_proxy, so we don't want
- # to apply the proxies on this URL.
- return {}
-
- # If the system proxy settings indicate that this URL should be bypassed,
- # don't proxy.
- if proxy_bypass(netloc):
- return {}
-
- # If we get here, we either didn't have no_proxy set or we're not going
- # anywhere that no_proxy applies to, and the system settings don't require
- # bypassing the proxy for the current URL.
- return getproxies()