aboutsummaryrefslogtreecommitdiff
path: root/pyasn1/compat
diff options
context:
space:
mode:
Diffstat (limited to 'pyasn1/compat')
-rw-r--r--pyasn1/compat/__init__.py0
-rw-r--r--pyasn1/compat/octets.py18
2 files changed, 18 insertions, 0 deletions
diff --git a/pyasn1/compat/__init__.py b/pyasn1/compat/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/pyasn1/compat/__init__.py
diff --git a/pyasn1/compat/octets.py b/pyasn1/compat/octets.py
new file mode 100644
index 0000000..d0303ea
--- /dev/null
+++ b/pyasn1/compat/octets.py
@@ -0,0 +1,18 @@
+from sys import version_info
+
+if version_info[0] <= 2:
+ int2oct = chr
+ ints2octs = lambda s: ''.join([ int2oct(x) for x in s ])
+ null = ''
+ oct2int = ord
+ octs2ints = lambda s: [ oct2int(x) for x in s ]
+ str2octs = lambda x: x
+ octs2str = lambda x: x
+else:
+ ints2octs = bytes
+ int2oct = lambda x: ints2octs((x,))
+ null = ints2octs()
+ oct2int = lambda x: x
+ octs2ints = lambda s: [ x for x in s ]
+ str2octs = lambda x: x.encode()
+ octs2str = lambda x: x.decode()