gpgme/lang
Justus Winter f3618bc615 python: Rework callbacks.
Simplify how the lifetime of callback arguments is managed.

* lang/python/gpgme.i (gpgme_edit_cb_t): Check arguments.
(PyObject_p_p, void_p_p): Drop rather dangerous interface.
(pygpgme_unwrap_gpgme_ctx_t): New function.
* lang/python/helpers.c (pygpgme_clear_generic_cb): Drop dangerous
function.
(pyPassphraseCb): Assert contract.
(pygpgme_set_passphrase_cb): Use Python's calling convention so that
we can raise exceptions.  Hand in 'self', get the wrapped object, and
simply store the hook data as attribute of the wrapper object.
(pyProgressCb, pygpgme_set_progress_cb): Likewise.
(pygpgme_set_status_cb): Likewise.
(pygpgme_data_new_from_cbs): Likewise.
* lang/python/helpers.h (pygpgme_clear_generic_cb): Drop prototype.
(pygpgme_set_passphrase_cb): Update prototype.
(pygpgme_set_progress_cb): Likewise.
(pygpgme_set_status_cb): Likewise.
(pygpgme_data_new_from_cbs): Likewise.
(pygpgme_unwrap_gpgme_ctx_t): New prottotype.
* lang/python/pyme/core.py (Context, Data): Update callsites.

Signed-off-by: Justus Winter <justus@g10code.com>
2016-06-16 14:19:17 +02:00
..
cl .gitignore: flesh out rules and add subdirectory-.gitignores. 2012-04-20 16:05:11 +02:00
cpp Cpp: Use whitelist for status messages 2016-06-01 13:48:28 +02:00
python python: Rework callbacks. 2016-06-16 14:19:17 +02:00
qt Qt: Fix debug output in t-ownertrust 2016-06-01 13:48:28 +02:00
Makefile.am python: Rename bindings. 2016-05-10 13:19:26 +02:00
README Merge branch 'justus/pyme3' 2016-05-17 15:10:28 +02:00

Language Support for GPGME
--------------------------

This directory contains support for other languages than C.

Please note that language support components may be under a different
license than GPGME itself.  You can find more information in each
sub-directory.

Directory	Language

cl		Common Lisp
cpp		C++
qt		Qt-Framework API
python		Python 3 (port of PyME 0.9.0)