diff options
Diffstat (limited to 'common')
-rw-r--r-- | common/logging.c | 15 | ||||
-rw-r--r-- | common/logging.h | 11 |
2 files changed, 17 insertions, 9 deletions
diff --git a/common/logging.c b/common/logging.c index df55e6827..7fe8b7419 100644 --- a/common/logging.c +++ b/common/logging.c @@ -1011,10 +1011,17 @@ log_flush (void) dump, with TEXT just an empty string, print a trailing linefeed, otherwise print an entire debug line. */ void -log_printhex (const char *text, const void *buffer, size_t length) +log_printhex (const void *buffer, size_t length, const char *fmt, ...) { - if (text && *text) - log_debug ("%s ", text); + if (fmt && *fmt) + { + va_list arg_ptr ; + + va_start (arg_ptr, fmt); + do_logv (GPGRT_LOG_DEBUG, 0, NULL, NULL, fmt, arg_ptr); + va_end (arg_ptr); + log_printf (" "); + } if (length) { const unsigned char *p = buffer; @@ -1022,7 +1029,7 @@ log_printhex (const char *text, const void *buffer, size_t length) for (length--, p++; length--; p++) log_printf (" %02X", *p); } - if (text) + if (fmt) log_printf ("\n"); } diff --git a/common/logging.h b/common/logging.h index 2225100cb..cb1ec1160 100644 --- a/common/logging.h +++ b/common/logging.h @@ -103,11 +103,12 @@ void log_debug_with_string (const char *string, const char *fmt, void log_printf (const char *fmt, ...) GPGRT_ATTR_PRINTF(1,2); void log_flush (void); -/* Print a hexdump of BUFFER. With TEXT passes as NULL print just the - raw dump, with TEXT being an empty string, print a trailing - linefeed, otherwise print an entire debug line with TEXT followed - by the hexdump and a final LF. */ -void log_printhex (const char *text, const void *buffer, size_t length); +/* Print a hexdump of BUFFER. With FMT passed as NULL print just the + * raw dump, with FMT being an empty string, print a trailing + * linefeed, otherwise print an entire debug line with expanded FMT + * followed by the hexdump and a final LF. */ +void log_printhex (const void *buffer, size_t length, + const char *fmt, ...) GPGRT_ATTR_PRINTF(3,4); void log_clock (const char *string); |