aboutsummaryrefslogtreecommitdiffstats
path: root/src/gpgme.c
diff options
context:
space:
mode:
authorBen Kibbey <[email protected]>2015-04-17 00:23:38 +0000
committerBen Kibbey <[email protected]>2015-08-15 22:19:27 +0000
commit4fadcf06ec8b0ebfb05c7622dbc3b73fd3c1bad9 (patch)
tree6bdfc09dfc56f20e8c0298eadd51d6aee051d5eb /src/gpgme.c
parentMake use of user passphrase handler during genkey. (diff)
downloadgpgme-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.c31
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)