]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
crypt-util: Translate libcryptsetup log level instead of using log_debug()
authorJan Janssen <medhefgo@web.de>
Mon, 25 Jun 2018 18:33:31 +0000 (20:33 +0200)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Tue, 26 Jun 2018 05:26:07 +0000 (14:26 +0900)
This makes sure that errors reported by libcryptsetup are shown to the
user instead of getting swallowed up by log_debug().

src/basic/crypt-util.c

index b181ba3ba027afc025edc5a30c0ee493574eb558..20bdc5489e5b145a6391d06641fcc322fa6f36fe 100644 (file)
@@ -5,6 +5,24 @@
 #include "log.h"
 
 void cryptsetup_log_glue(int level, const char *msg, void *usrptr) {
-        log_debug("%s", msg);
+        switch (level) {
+        case CRYPT_LOG_NORMAL:
+                level = LOG_NOTICE;
+                break;
+        case CRYPT_LOG_ERROR:
+                level = LOG_ERR;
+                break;
+        case CRYPT_LOG_VERBOSE:
+                level = LOG_INFO;
+                break;
+        case CRYPT_LOG_DEBUG:
+                level = LOG_DEBUG;
+                break;
+        default:
+                log_error("Unknown libcryptsetup log level: %d", level);
+                level = LOG_ERR;
+        }
+
+        log_full(level, "%s", msg);
 }
 #endif