]> git.ipfire.org Git - thirdparty/knot-resolver.git/commitdiff
lib/log level names: disregard SYSLOG_NAMES
authorVladimír Čunát <vladimir.cunat@nic.cz>
Wed, 28 Jul 2021 17:29:51 +0000 (19:29 +0200)
committerTomas Krizek <tomas.krizek@nic.cz>
Thu, 29 Jul 2021 09:44:47 +0000 (11:44 +0200)
It's a non-standard feature of syslog.h and I don't think it's worth
the trouble.

We didn't really utilize it; someone would have to #define it,
and moreover we would get into problems if this wasn't being done
the same on all places including log.h.
Making the names adapt to the platform would also mean that
config files and docs wouldn't be portable.

Also make kr_log_level2name() return const.

lib/log.c
lib/log.h

index ef1e508b599da60074cc40cad22f21b9f952fc9d..794cf9f907fe7b7ef9bbcf5bb78a54ce92bcf0f3 100644 (file)
--- a/lib/log.c
+++ b/lib/log.c
@@ -83,20 +83,6 @@ log_group_names_t log_group_names[] = {
        { NULL,         -1 },
 };
 
-#ifndef SYSLOG_NAMES
-syslog_code_t prioritynames[] = {
-       { "alert",      LOG_ALERT },
-       { "crit",       LOG_CRIT },
-       { "debug",      LOG_DEBUG },
-       { "emerg",      LOG_EMERG },
-       { "err",        LOG_ERR },
-       { "info",       LOG_INFO },
-       { "notice",     LOG_NOTICE },
-       { "warning",    LOG_WARNING },
-       { NULL,         -1 },
-};
-#endif
-
 bool kr_log_group_is_set(enum kr_log_group group)
 {
        return kr_log_groups & (1ULL << group);
@@ -145,12 +131,29 @@ static void kres_gnutls_log(int level, const char *message)
        kr_log_debug(GNUTLS, "(%d) %s", level, message);
 }
 
-char *kr_log_level2name(kr_log_level_t level)
+
+struct log_level_name {
+       const char *name;
+       kr_log_level_t level;
+};
+const struct log_level_name level_names[] = {
+       { "alert",      LOG_ALERT },
+       { "crit",       LOG_CRIT },
+       { "debug",      LOG_DEBUG },
+       { "emerg",      LOG_EMERG },
+       { "err",        LOG_ERR },
+       { "info",       LOG_INFO },
+       { "notice",     LOG_NOTICE },
+       { "warning",    LOG_WARNING },
+       { NULL,         -1 },
+};
+
+const char *kr_log_level2name(kr_log_level_t level)
 {
-       for (int i = 0; prioritynames[i].c_name; ++i)
+       for (int i = 0; level_names[i].name; ++i)
        {
-               if (prioritynames[i].c_val == level)
-                       return prioritynames[i].c_name;
+               if (level_names[i].level == level)
+                       return level_names[i].name;
        }
 
        return NULL;
@@ -161,10 +164,10 @@ kr_log_level_t kr_log_name2level(const char *name)
        if (kr_fails_assert(name))
                return -1;
 
-       for (int i = 0; prioritynames[i].c_name; ++i)
+       for (int i = 0; level_names[i].name; ++i)
        {
-               if (strcmp(prioritynames[i].c_name, name) == 0)
-                       return prioritynames[i].c_val;
+               if (strcmp(level_names[i].name, name) == 0)
+                       return level_names[i].level;
        }
 
        return -1;
index 65901b69eaaf212df8307e2e90cd307436efc80b..7ae8a35690c76144ff366167096d79d0b786cd62 100644 (file)
--- a/lib/log.h
+++ b/lib/log.h
@@ -191,20 +191,10 @@ void kr_log_target_set(kr_log_target_t target);
 /* Syslog */
 
 KR_EXPORT
-char *kr_log_level2name(kr_log_level_t level);
+const char *kr_log_level2name(kr_log_level_t level);
 KR_EXPORT
 kr_log_level_t kr_log_name2level(const char *name);
 
-#ifndef SYSLOG_NAMES
-typedef struct _code {
-       char    *c_name;
-       int     c_val;
-} syslog_code_t;
-
-KR_EXPORT
-extern syslog_code_t prioritynames[];
-#endif
-
 
 /* Misc. */