From: Martin Wilck <mwi...@suse.com>

Signed-off-by: Martin Wilck <mwi...@suse.com>
---
 libmultipath/debug.c     |  4 ++--
 libmultipath/debug.h     |  7 +++++++
 libmultipath/devmapper.c |  4 ++--
 multipath/main.c         |  4 ++--
 multipathd/main.c        | 17 ++++++++---------
 tests/globals.c          |  3 ++-
 tests/hwtable.c          |  2 +-
 7 files changed, 24 insertions(+), 17 deletions(-)

diff --git a/libmultipath/debug.c b/libmultipath/debug.c
index a1713b9..f9b7755 100644
--- a/libmultipath/debug.c
+++ b/libmultipath/debug.c
@@ -25,8 +25,8 @@ void dlog (int sink, int prio, const char * fmt, ...)
        va_start(ap, fmt);
 
        if (prio <= libmp_verbosity) {
-               if (sink < 1) {
-                       if (sink == 0) {
+               if (sink != LOGSINK_SYSLOG) {
+                       if (sink == LOGSINK_STDERR_WITH_TIME) {
                                time_t t = time(NULL);
                                struct tm *tb = localtime(&t);
                                char buff[16];
diff --git a/libmultipath/debug.h b/libmultipath/debug.h
index 1f3bc8b..91ba02b 100644
--- a/libmultipath/debug.h
+++ b/libmultipath/debug.h
@@ -12,3 +12,10 @@ extern int libmp_verbosity;
 
 #define condlog(prio, fmt, args...) \
        dlog(logsink, prio, fmt "\n", ##args)
+
+enum {
+       LOGSINK_STDERR_WITH_TIME = 0,
+       LOGSINK_STDERR_WITHOUT_TIME = -1,
+       LOGSINK_SYSLOG = 1,
+};
+
diff --git a/libmultipath/devmapper.c b/libmultipath/devmapper.c
index a8e0611..78112a9 100644
--- a/libmultipath/devmapper.c
+++ b/libmultipath/devmapper.c
@@ -104,8 +104,8 @@ dm_write_log (int level, const char *file, int line, const 
char *f, ...)
                return;
 
        va_start(ap, f);
-       if (logsink < 1) {
-               if (logsink == 0) {
+       if (logsink != LOGSINK_SYSLOG) {
+               if (logsink == LOGSINK_STDERR_WITH_TIME) {
                        time_t t = time(NULL);
                        struct tm *tb = localtime(&t);
                        char buff[16];
diff --git a/multipath/main.c b/multipath/main.c
index 9bdc5d2..46cfa17 100644
--- a/multipath/main.c
+++ b/multipath/main.c
@@ -840,7 +840,7 @@ main (int argc, char *argv[])
        libmultipath_init();
        if (atexit(dm_lib_exit) || atexit(libmultipath_exit))
                condlog(1, "failed to register cleanup handler for 
libmultipath: %m");
-       logsink = 0;
+       logsink = LOGSINK_STDERR_WITH_TIME;
        if (init_config(DEFAULT_CONFIGFILE))
                exit(RTVL_FAIL);
        if (atexit(uninit_config))
@@ -991,7 +991,7 @@ main (int argc, char *argv[])
        if (dev_type == DEV_UEVENT) {
                openlog("multipath", 0, LOG_DAEMON);
                setlogmask(LOG_UPTO(libmp_verbosity + 3));
-               logsink = 1;
+               logsink = LOGSINK_SYSLOG;
        }
 
        set_max_fds(conf->max_fds);
diff --git a/multipathd/main.c b/multipathd/main.c
index fbd354c..725a10b 100644
--- a/multipathd/main.c
+++ b/multipathd/main.c
@@ -2780,7 +2780,7 @@ handle_signals(bool nonfatal)
        }
        if (log_reset_sig) {
                condlog(2, "reset log (signal)");
-               if (logsink == 1)
+               if (logsink == LOGSINK_SYSLOG)
                        log_thread_reset();
        }
        reconfig_sig = 0;
@@ -3032,7 +3032,7 @@ static void cleanup_child(void)
                cleanup_dmevent_waiter();
 
        cleanup_pidfile();
-       if (logsink == 1)
+       if (logsink == LOGSINK_SYSLOG)
                log_thread_stop();
 
        cleanup_conf();
@@ -3078,7 +3078,7 @@ child (__attribute__((unused)) void *param)
        setup_thread_attr(&uevent_attr, DEFAULT_UEVENT_STACKSIZE * 1024, 0);
        setup_thread_attr(&waiter_attr, 32 * 1024, 1);
 
-       if (logsink == 1) {
+       if (logsink == LOGSINK_SYSLOG) {
                setup_thread_attr(&log_attr, 64 * 1024, 0);
                log_thread_start(&log_attr);
                pthread_attr_destroy(&log_attr);
@@ -3309,7 +3309,7 @@ main (int argc, char *argv[])
        ANNOTATE_BENIGN_RACE_SIZED(&uxsock_timeout, sizeof(uxsock_timeout),
                "Suppress complaints about this scalar variable");
 
-       logsink = 1;
+       logsink = LOGSINK_SYSLOG;
 
        if (getuid() != 0) {
                fprintf(stderr, "need to be root\n");
@@ -3336,9 +3336,8 @@ main (int argc, char *argv[])
                switch(arg) {
                case 'd':
                        foreground = 1;
-                       if (logsink > 0)
-                               logsink = 0;
-                       //debug=1; /* ### comment me out ### */
+                       if (logsink == LOGSINK_SYSLOG)
+                               logsink = LOGSINK_STDERR_WITH_TIME;
                        break;
                case 'v':
                        if (sizeof(optarg) > sizeof(char *) ||
@@ -3348,7 +3347,7 @@ main (int argc, char *argv[])
                        libmp_verbosity = verbosity = atoi(optarg);
                        break;
                case 's':
-                       logsink = -1;
+                       logsink = LOGSINK_STDERR_WITHOUT_TIME;
                        break;
                case 'k':
                        logsink = 0;
@@ -3381,7 +3380,7 @@ main (int argc, char *argv[])
                char * s = cmd;
                char * c = s;
 
-               logsink = 0;
+               logsink = LOGSINK_STDERR_WITH_TIME;
                if (verbosity)
                        libmp_verbosity = verbosity;
                conf = load_config(DEFAULT_CONFIGFILE);
diff --git a/tests/globals.c b/tests/globals.c
index 8add5eb..fc0c07a 100644
--- a/tests/globals.c
+++ b/tests/globals.c
@@ -1,9 +1,10 @@
 #include "structs.h"
 #include "config.h"
+#include "debug.h"
 
 /* Required globals */
 struct udev *udev;
-int logsink = -1;
+int logsink = LOGSINK_STDERR_WITHOUT_TIME;
 struct config conf = {
        .verbosity = 4,
 };
diff --git a/tests/hwtable.c b/tests/hwtable.c
index 57f832b..4dd0873 100644
--- a/tests/hwtable.c
+++ b/tests/hwtable.c
@@ -53,7 +53,7 @@ struct hwt_state {
 
 static struct config *_conf;
 struct udev *udev;
-int logsink = -1;
+int logsink = LOGSINK_STDERR_WITHOUT_TIME;
 
 struct config *get_multipath_config(void)
 {
-- 
2.28.0


--
dm-devel mailing list
dm-devel@redhat.com
https://www.redhat.com/mailman/listinfo/dm-devel

Reply via email to