aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--NEWS7
-rw-r--r--src/gpg-error.def.in1
-rw-r--r--src/gpg-error.h.in10
-rw-r--r--src/gpg-error.vers1
-rw-r--r--src/visibility.c11
-rw-r--r--src/visibility.h2
6 files changed, 28 insertions, 4 deletions
diff --git a/NEWS b/NEWS
index a41520a..19ba657 100644
--- a/NEWS
+++ b/NEWS
@@ -1,11 +1,16 @@
Noteworthy changes in version 1.49 (unreleased) [C35/A35/R_]
-----------------------------------------------
+ * Two new functions to improve the logging interface. The
+ gpgrt_logv_domain is currently the same as gpgrt_logv_prefix but
+ allows to pass a domain string so that in future we will be able to
+ select log output by domain. It also provide a non yet functional
+ feature to include a hex dump.
* Interface changes relative to the 1.48 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gpgrt_add_post_log_func NEW.
-
+ gpgrt_logv_domain NEW.
Release-info: https://dev.gnupg.org/T7012
diff --git a/src/gpg-error.def.in b/src/gpg-error.def.in
index eab681d..a7525a8 100644
--- a/src/gpg-error.def.in
+++ b/src/gpg-error.def.in
@@ -248,5 +248,6 @@ EXPORTS
gpgrt_wipememory @189
gpgrt_add_post_log_func @190
+ gpgrt_logv_domain @191
;; end of file with public symbols for Windows.
diff --git a/src/gpg-error.h.in b/src/gpg-error.h.in
index d00bf1b..3eacc1a 100644
--- a/src/gpg-error.h.in
+++ b/src/gpg-error.h.in
@@ -1010,9 +1010,13 @@ int gpgrt_log_get_fd (void);
gpgrt_stream_t gpgrt_log_get_stream (void);
void gpgrt_log (int level, const char *fmt, ...) GPGRT_ATTR_PRINTF(2,3);
-void gpgrt_logv (int level, const char *fmt, va_list arg_ptr);
-void gpgrt_logv_prefix (int level, const char *prefix,
- const char *fmt, va_list arg_ptr);
+void gpgrt_logv (int level, const char *fmt,
+ va_list arg_ptr) GPGRT_ATTR_PRINTF(2,0);
+void gpgrt_logv_prefix (int level, const char *prefix, const char *fmt,
+ va_list arg_ptr) GPGRT_ATTR_PRINTF(3,0);
+void gpgrt_logv_domain (const char *domain, int level, const char *prefix,
+ const void *buffer, size_t length, const char *fmt,
+ va_list arg_ptr) GPGRT_ATTR_PRINTF(6,0);
void gpgrt_log_string (int level, const char *string);
void gpgrt_log_bug (const char *fmt, ...) GPGRT_ATTR_NR_PRINTF(1,2);
void gpgrt_log_fatal (const char *fmt, ...) GPGRT_ATTR_NR_PRINTF(1,2);
diff --git a/src/gpg-error.vers b/src/gpg-error.vers
index b095edf..9287fbf 100644
--- a/src/gpg-error.vers
+++ b/src/gpg-error.vers
@@ -212,6 +212,7 @@ GPG_ERROR_1.0 {
gpgrt_wipememory;
gpgrt_add_post_log_func;
+ gpgrt_logv_domain;
local:
*;
diff --git a/src/visibility.c b/src/visibility.c
index 8c00168..65385be 100644
--- a/src/visibility.c
+++ b/src/visibility.c
@@ -993,6 +993,17 @@ gpgrt_logv_prefix (int level, const char *prefix,
}
void
+gpgrt_logv_domain (const char *domain, int level, const char *prefix,
+ const void *buffer, size_t length,
+ const char *fmt, va_list arg_ptr)
+{
+ (void)domain; /* Not yet used. */
+ (void)buffer;
+ (void)length;
+ _gpgrt_logv_prefix (level, prefix, fmt, arg_ptr);
+}
+
+void
gpgrt_log_string (int level, const char *string)
{
_gpgrt_log_string (level, string);
diff --git a/src/visibility.h b/src/visibility.h
index 8f3bd8c..e1bf045 100644
--- a/src/visibility.h
+++ b/src/visibility.h
@@ -188,6 +188,7 @@ MARK_VISIBLE (gpgrt_add_post_log_func)
MARK_VISIBLE (gpgrt_log)
MARK_VISIBLE (gpgrt_logv)
MARK_VISIBLE (gpgrt_logv_prefix)
+MARK_VISIBLE (gpgrt_logv_domain)
MARK_VISIBLE (gpgrt_log_string)
MARK_VISIBLE (gpgrt_log_bug)
MARK_VISIBLE (gpgrt_log_fatal)
@@ -380,6 +381,7 @@ MARK_VISIBLE (gpgrt_absfnameconcat)
#define gpgrt_log _gpgrt_USE_UNDERSCORED_FUNCTION
#define gpgrt_logv _gpgrt_USE_UNDERSCORED_FUNCTION
#define gpgrt_logv_prefix _gpgrt_USE_UNDERSCORED_FUNCTION
+#define gpgrt_logv_domain _gpgrt_USE_UNDERSCORED_FUNCTION
#define gpgrt_log_string _gpgrt_USE_UNDERSCORED_FUNCTION
#define gpgrt_log_bug _gpgrt_USE_UNDERSCORED_FUNCTION
#define gpgrt_log_fatal _gpgrt_USE_UNDERSCORED_FUNCTION