From 9b88cfa0962f28894658cff8777fe7a217c6f700 Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Mon, 24 Jul 2017 18:14:37 +0200 Subject: [PATCH] dirmngr: New function dirmngr_status_printf. * dirmngr/server.c (dirmngr_status_printf): New. Signed-off-by: Werner Koch --- dirmngr/dirmngr.h | 3 +++ dirmngr/server.c | 18 ++++++++++++++++++ 2 files changed, 21 insertions(+) diff --git a/dirmngr/dirmngr.h b/dirmngr/dirmngr.h index 0f5dde28e..1f660de10 100644 --- a/dirmngr/dirmngr.h +++ b/dirmngr/dirmngr.h @@ -229,6 +229,9 @@ int dirmngr_assuan_log_monitor (assuan_context_t ctx, unsigned int cat, void start_command_handler (gnupg_fd_t fd); gpg_error_t dirmngr_status (ctrl_t ctrl, const char *keyword, ...); gpg_error_t dirmngr_status_help (ctrl_t ctrl, const char *text); +gpg_error_t dirmngr_status_printf (ctrl_t ctrl, const char *keyword, + const char *format, + ...) GPGRT_ATTR_PRINTF(3,4); gpg_error_t dirmngr_tick (ctrl_t ctrl); /*-- http-ntbtls.c --*/ diff --git a/dirmngr/server.c b/dirmngr/server.c index 788bebdfa..903953486 100644 --- a/dirmngr/server.c +++ b/dirmngr/server.c @@ -2776,6 +2776,24 @@ dirmngr_status_help (ctrl_t ctrl, const char *text) return err; } + +/* This function is similar to print_assuan_status but takes a CTRL + * arg instead of an assuan context as first argument. */ +gpg_error_t +dirmngr_status_printf (ctrl_t ctrl, const char *keyword, + const char *format, ...) +{ + gpg_error_t err; + va_list arg_ptr; + assuan_context_t ctx = ctrl->server_local->assuan_ctx; + + va_start (arg_ptr, format); + err = vprint_assuan_status (ctx, keyword, format, arg_ptr); + va_end (arg_ptr); + return err; +} + + /* Send a tick progress indicator back. Fixme: This is only done for the currently active channel. */ gpg_error_t