<p>Neels Hofmeyr has uploaded this change for <strong>review</strong>.</p><p><a href="https://gerrit.osmocom.org/10886">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">logging: define lower-case loglevel value_string[]<br><br>Instead of constantly converting logging level strings to lowercase<br>representation during VTY interaction, just define loglevel_strs_lower[] and<br>use those.<br><br>I'm not defining a log_level_str_lower() function to wrap get_value_string(),<br>because I already know that a later patch will switch to using<br>get_value_string_or_null().<br><br>Change-Id: Ie55d732281bdf74324e1dd7f8a2ba91d11409851<br>---<br>M include/osmocom/core/logging_internal.h<br>M src/logging.c<br>M src/vty/logging_vty.c<br>3 files changed, 15 insertions(+), 3 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/86/10886/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/include/osmocom/core/logging_internal.h b/include/osmocom/core/logging_internal.h</span><br><span>index 55b1bbd..96b80a3 100644</span><br><span>--- a/include/osmocom/core/logging_internal.h</span><br><span>+++ b/include/osmocom/core/logging_internal.h</span><br><span>@@ -9,6 +9,8 @@</span><br><span> extern void *tall_log_ctx;</span><br><span> extern const struct log_info *osmo_log_info;</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+extern const struct value_string loglevel_strs_lower[];</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> void assert_loginfo(const char *src);</span><br><span> </span><br><span> /*! @} */</span><br><span>diff --git a/src/logging.c b/src/logging.c</span><br><span>index 67470a5..159838c 100644</span><br><span>--- a/src/logging.c</span><br><span>+++ b/src/logging.c</span><br><span>@@ -72,6 +72,16 @@</span><br><span>    { 0, NULL },</span><br><span> };</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+/*! human readable string for each log level, lower case */</span><br><span style="color: hsl(120, 100%, 40%);">+const struct value_string loglevel_strs_lower[] = {</span><br><span style="color: hsl(120, 100%, 40%);">+      { LOGL_DEBUG,   "debug" },</span><br><span style="color: hsl(120, 100%, 40%);">+  { LOGL_INFO,    "info" },</span><br><span style="color: hsl(120, 100%, 40%);">+   { LOGL_NOTICE,  "notice" },</span><br><span style="color: hsl(120, 100%, 40%);">+ { LOGL_ERROR,   "error" },</span><br><span style="color: hsl(120, 100%, 40%);">+  { LOGL_FATAL,   "fatal" },</span><br><span style="color: hsl(120, 100%, 40%);">+  { 0, NULL },</span><br><span style="color: hsl(120, 100%, 40%);">+};</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> #define INT2IDX(x)        (-1*(x)-1)</span><br><span> static const struct log_info_cat internal_cat[OSMO_NUM_DLIB] = {</span><br><span>       [INT2IDX(DLGLOBAL)] = { /* -1 becomes 0 */</span><br><span>diff --git a/src/vty/logging_vty.c b/src/vty/logging_vty.c</span><br><span>index 6758dd2..d0a9421 100644</span><br><span>--- a/src/vty/logging_vty.c</span><br><span>+++ b/src/vty/logging_vty.c</span><br><span>@@ -861,9 +861,9 @@</span><br><span>            get_value_string(logging_print_file_args, tgt->print_filename2),</span><br><span>          VTY_NEWLINE);</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-       /* stupid old osmo logging API uses uppercase strings... */</span><br><span>  if (tgt->loglevel)</span><br><span style="color: hsl(0, 100%, 40%);">-           vty_out(vty, "  logging level all %s%s", osmo_str_tolower(log_level_str(tgt->loglevel)),</span><br><span style="color: hsl(120, 100%, 40%);">+         vty_out(vty, "  logging level all %s%s",</span><br><span style="color: hsl(120, 100%, 40%);">+                    get_value_string(loglevel_strs_lower, tgt->loglevel),</span><br><span>                     VTY_NEWLINE);</span><br><span> </span><br><span>    for (i = 0; i < osmo_log_info->num_cat; i++) {</span><br><span>@@ -875,7 +875,7 @@</span><br><span> </span><br><span>               /* stupid old osmo logging API uses uppercase strings... */</span><br><span>          vty_out(vty, "  logging level %s", osmo_str_tolower(osmo_log_info->cat[i].name+1));</span><br><span style="color: hsl(0, 100%, 40%);">-                vty_out(vty, " %s%s", osmo_str_tolower(log_level_str(cat->loglevel)), VTY_NEWLINE);</span><br><span style="color: hsl(120, 100%, 40%);">+              vty_out(vty, " %s%s", get_value_string(loglevel_strs_lower, cat->loglevel), VTY_NEWLINE);</span><br><span>       }</span><br><span> </span><br><span>        return 1;</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/10886">change 10886</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.osmocom.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.osmocom.org/10886"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: libosmocore </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-MessageType: newchange </div>
<div style="display:none"> Gerrit-Change-Id: Ie55d732281bdf74324e1dd7f8a2ba91d11409851 </div>
<div style="display:none"> Gerrit-Change-Number: 10886 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: Neels Hofmeyr <nhofmeyr@sysmocom.de> </div>