diff options
author | Ben Kibbey <[email protected]> | 2015-04-17 00:23:38 +0000 |
---|---|---|
committer | Ben Kibbey <[email protected]> | 2015-08-15 22:19:27 +0000 |
commit | 4fadcf06ec8b0ebfb05c7622dbc3b73fd3c1bad9 (patch) | |
tree | 6bdfc09dfc56f20e8c0298eadd51d6aee051d5eb /src/gpgme.c | |
parent | Make use of user passphrase handler during genkey. (diff) | |
download | gpgme-4fadcf06ec8b0ebfb05c7622dbc3b73fd3c1bad9.tar.gz gpgme-4fadcf06ec8b0ebfb05c7622dbc3b73fd3c1bad9.zip |
Add gpgme_set/get_status_cb().
* src/gpgme.h.in (gpgme_set_status_cb): New.
(gpgme_get_status_cb): New.
(gpgme_status_cb_t): New.
* src/gpgme.c (gpgme_set_status_cb): New.
(gpgme_get_status_cb): New.
* src/context.h (status_cb): New.
(status_cb_value): New.
* src/gpgme.def: Export new symbols.
* src/libgpgme.vers: Ditto.
* doc/gpgme.texi: Document these new functions.
--
This callback function is used to forward status messages from gpg back
to the client.
Diffstat (limited to '')
-rw-r--r-- | src/gpgme.c | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/gpgme.c b/src/gpgme.c index c24b6200..9c09827e 100644 --- a/src/gpgme.c +++ b/src/gpgme.c @@ -656,6 +656,37 @@ gpgme_get_progress_cb (gpgme_ctx_t ctx, gpgme_progress_cb_t *r_cb, } +/* This function sets a callback function to be used as a status + message forwarder. */ +void +gpgme_set_status_cb (gpgme_ctx_t ctx, gpgme_status_cb_t cb, void *cb_value) +{ + TRACE2 (DEBUG_CTX, "gpgme_set_status_cb", ctx, "status_cb=%p/%p", + cb, cb_value); + + if (!ctx) + return; + + ctx->status_cb = cb; + ctx->status_cb_value = cb_value; +} + + +/* This function returns the callback function to be used as a + status message forwarder. */ +void +gpgme_get_status_cb (gpgme_ctx_t ctx, gpgme_status_cb_t *r_cb, + void **r_cb_value) +{ + TRACE2 (DEBUG_CTX, "gpgme_get_status_cb", ctx, "ctx->status_cb=%p/%p", + ctx->status_cb, ctx->status_cb_value); + if (r_cb) + *r_cb = ctx->status_cb; + if (r_cb_value) + *r_cb_value = ctx->status_cb_value; +} + + /* Set the I/O callback functions for CTX to IO_CBS. */ void gpgme_set_io_cbs (gpgme_ctx_t ctx, gpgme_io_cbs_t io_cbs) |