aboutsummaryrefslogtreecommitdiffstats
path: root/lang/python/pyme/util.py
diff options
context:
space:
mode:
authorJustus Winter <[email protected]>2016-07-28 10:40:54 +0000
committerJustus Winter <[email protected]>2016-07-28 12:23:07 +0000
commitde69fa496c09386d5e99747670d6887cf52dd09e (patch)
tree4debb7586a9b18b62eba374a67020e1f1ae69c1e /lang/python/pyme/util.py
parentpython: Improve engine information handling. (diff)
downloadgpgme-de69fa496c09386d5e99747670d6887cf52dd09e.tar.gz
gpgme-de69fa496c09386d5e99747670d6887cf52dd09e.zip
python: Support the Assuan engine.
* lang/python/gpgme.i: Add typemaps for the Assuan protocol callbacks. * lang/python/helpers.c (_pyme_assuan_{data,inquire,status}_cb): New functions. * lang/python/private.h (_pyme_assuan_{data,inquire,status}_cb): New prototypes. * lang/python/pyme/core.py (Context.assuan_transact): New method. * lang/python/pyme/util.py (percent_escape): New function. * lang/python/tests/Makefile.am (py_tests): Add new test. * lang/python/tests/t-protocol-assuan.py: New file. Signed-off-by: Justus Winter <[email protected]>
Diffstat (limited to '')
-rw-r--r--lang/python/pyme/util.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/lang/python/pyme/util.py b/lang/python/pyme/util.py
index bbd28fe7..7eb6353f 100644
--- a/lang/python/pyme/util.py
+++ b/lang/python/pyme/util.py
@@ -31,3 +31,9 @@ def process_constants(prefix, scope):
if identifier.startswith(prefix)}
scope.update(constants)
return list(constants.keys())
+
+def percent_escape(s):
+ return ''.join(
+ '%{0:2x}'.format(ord(c))
+ if c == '+' or c == '"' or c == '%' or ord(c) <= 0x20 else c
+ for c in s)