From de69fa496c09386d5e99747670d6887cf52dd09e Mon Sep 17 00:00:00 2001 From: Justus Winter Date: Thu, 28 Jul 2016 12:40:54 +0200 Subject: 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 --- lang/python/pyme/util.py | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'lang/python/pyme/util.py') 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) -- cgit v1.2.3