Use six library to check python version
diff --git a/OpenSSL/SSL.py b/OpenSSL/SSL.py
index 8972097..eb26e76 100644
--- a/OpenSSL/SSL.py
+++ b/OpenSSL/SSL.py
@@ -1,5 +1,6 @@
+import six
from warnings import warn
-from sys import platform, version_info
+from sys import platform
from functools import wraps, partial
from itertools import count
from weakref import WeakValueDictionary
@@ -314,12 +315,10 @@
# Backward compatibility
if isinstance(cafile, _text_type):
- if version_info.major == 2:
+ if six.PY2:
warn("unicode in cafile is no longer accepted, use bytes", DeprecationWarning)
- elif version_info.major == 3:
- warn("str in cafile is no longer accepted, use bytes", DeprecationWarning)
else:
- warn("text in cafile is no longer accepted, use bytes", DeprecationWarning)
+ warn("str in cafile is no longer accepted, use bytes", DeprecationWarning)
cafile = cafile.encode('utf-8')
if cafile is None:
@@ -985,12 +984,10 @@
# Backward compatibility
if isinstance(buf, _text_type):
- if version_info.major == 2:
+ if six.PY2:
warn("unicode in buf is no longer accepted, use bytes", DeprecationWarning)
- elif version_info.major == 3:
- warn("str in buf is no longer accepted, use bytes", DeprecationWarning)
else:
- warn("text in buf is no longer accepted, use bytes", DeprecationWarning)
+ warn("str in buf is no longer accepted, use bytes", DeprecationWarning)
buf = buf.encode('utf-8')
if isinstance(buf, _memoryview):
@@ -1020,12 +1017,10 @@
# Backward compatibility
if isinstance(buf, _text_type):
- if version_info.major == 2:
+ if six.PY2:
warn("unicode in buf is no longer accepted, use bytes", DeprecationWarning)
- elif version_info.major == 3:
- warn("str in buf is no longer accepted, use bytes", DeprecationWarning)
else:
- warn("text in buf is no longer accepted, use bytes", DeprecationWarning)
+ warn("str in buf is no longer accepted, use bytes", DeprecationWarning)
buf = buf.encode('utf-8')
if isinstance(buf, _memoryview):
@@ -1116,12 +1111,10 @@
# Backward compatibility
if isinstance(buf, _text_type):
- if version_info.major == 2:
+ if six.PY2:
warn("unicode in buf is no longer accepted, use bytes", DeprecationWarning)
- elif version_info.major == 3:
- warn("str in vuf is no longer accepted, use bytes", DeprecationWarning)
else:
- warn("text in buf is no longer accepted, use bytes", DeprecationWarning)
+ warn("str in buf is no longer accepted, use bytes", DeprecationWarning)
buf = buf.encode("ascii")
if self._into_ssl is None:
diff --git a/OpenSSL/crypto.py b/OpenSSL/crypto.py
index b671d9e..cc99105 100644
--- a/OpenSSL/crypto.py
+++ b/OpenSSL/crypto.py
@@ -1,5 +1,5 @@
+import six
from warnings import warn
-from sys import version_info
from time import time
from base64 import b16encode
from functools import partial
@@ -1957,12 +1957,10 @@
# Backward compatibility
if isinstance(passphrase, _text_type):
- if version_info.major == 2:
+ if six.PY2:
warn("unicode in passphrase is no longer accepted, use bytes", DeprecationWarning)
- elif version_info.major == 3:
- warn("str in passphrase is no longer accepted, use bytes", DeprecationWarning)
else:
- warn("text in passphrase is no longer accepted, use bytes", DeprecationWarning)
+ warn("str in passphrase is no longer accepted, use bytes", DeprecationWarning)
passphrase = passphrase.encode('utf-8')
if self._cacerts is None:
@@ -2265,12 +2263,10 @@
# Backward compatibility
if isinstance(data, _text_type):
- if version_info.major == 2:
+ if six.PY2:
warn("unicode in passphrase is no longer accepted, use bytes", DeprecationWarning)
- elif version_info.major == 3:
- warn("str in passphrase is no longer accepted, use bytes", DeprecationWarning)
else:
- warn("text in passphrase is no longer accepted, use bytes", DeprecationWarning)
+ warn("str in passphrase is no longer accepted, use bytes", DeprecationWarning)
data = data.encode('utf-8')
digest_obj = _lib.EVP_get_digestbyname(_byte_string(digest))
@@ -2310,12 +2306,10 @@
# Backward compatibility
if isinstance(data, _text_type):
- if version_info.major == 2:
+ if six.PY2:
warn("unicode in passphrase is no longer accepted, use bytes", DeprecationWarning)
- elif version_info.major == 3:
- warn("str in passphrase is no longer accepted, use bytes", DeprecationWarning)
else:
- warn("text in passphrase is no longer accepted, use bytes", DeprecationWarning)
+ warn("str in passphrase is no longer accepted, use bytes", DeprecationWarning)
data = data.encode('utf-8')
digest_obj = _lib.EVP_get_digestbyname(_byte_string(digest))
@@ -2412,12 +2406,10 @@
# Backward compatibility
if isinstance(passphrase, _text_type):
- if version_info.major == 2:
+ if six.PY2:
warn("unicode in passphrase is no longer accepted, use bytes", DeprecationWarning)
- elif version_info.major == 3:
- warn("str in passphrase is no longer accepted, use bytes", DeprecationWarning)
else:
- warn("text in passphrase is no longer accepted, use bytes", DeprecationWarning)
+ warn("str in passphrase is no longer accepted, use bytes", DeprecationWarning)
passphrase = passphrase.encode('utf-8')
if isinstance(buffer, _text_type):