]> git.ozlabs.org Git - ccan/blobdiff - ccan/tdb2/test/logging.c
tdb2: clean up logging
[ccan] / ccan / tdb2 / test / logging.c
index 7fd3b1f2345e209b347c7a6e5fc380d38d61ec81..8284be13439b6dd9f48556a94d934caf3c6671a6 100644 (file)
@@ -1,11 +1,11 @@
-#define _GNU_SOURCE
 #include <stdio.h>
 #include <stdlib.h>
-#include <stdarg.h>
 #include <ccan/tap/tap.h>
 #include "logging.h"
 
 unsigned tap_log_messages;
+const char *log_prefix = "";
+bool suppress_logging;
 
 union tdb_attribute tap_log_attr = {
        .log = { .base = { .attr = TDB_ATTRIBUTE_LOG },
@@ -14,18 +14,13 @@ union tdb_attribute tap_log_attr = {
 
 void tap_log_fn(struct tdb_context *tdb,
                enum tdb_debug_level level, void *priv,
-               const char *fmt, ...)
+               const char *message)
 {
-       va_list ap;
-       char *p;
+       if (suppress_logging)
+               return;
 
-       va_start(ap, fmt);
-       if (vasprintf(&p, fmt, ap) == -1)
-               abort();
-       diag("tdb log level %u: %s", level, p);
-       free(p);
+       diag("tdb log level %u: %s%s", level, log_prefix, message);
        if (level != TDB_DEBUG_TRACE)
                tap_log_messages++;
-       va_end(ap);
 }