<p>Pau Espin Pedrol has uploaded this change for <strong>review</strong>.</p><p><a href="https://gerrit.osmocom.org/9533">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">lc15: rewrite and refactor code to print hwversion description<br><br>Also print a newline at the end of print_hwversion().<br><br>In the process of rewrite, fix several warnings in the few lines of this functions:<br>osmo-bts/src/osmo-bts-litecell15/main.c: In function ‘print_hwversion’:<br>osmo-bts/src/osmo-bts-litecell15/main.c:162:12: warning: passing argument 1 to restrict-qualified parameter aliases with argument 4 [-Wrestrict]<br>   snprintf(model_name, sizeof(model_name), "%s Rev %c",<br>            ^~~~~~~~~~<br>    model_name, (char)rev);<br>    ~~~~~~~~~~<br>osmo-bts/src/osmo-bts-litecell15/main.c:168:12: warning: passing argument 1 to restrict-qualified parameter aliases with argument 4 [-Wrestrict]<br>   snprintf(model_name, sizeof(model_name), "%s (%05X)",<br>            ^~~~~~~~~~<br>    model_name, model);<br>    ~~~~~~~~~~<br>osmo-bts/src/osmo-bts-litecell15/main.c:162:47: warning: ‘ Rev ’ directive output may be truncated writing 5 bytes into a region of size between 1 and 64 [-Wformat-truncation=]<br>   snprintf(model_name, sizeof(model_name), "%s Rev %c",<br>                                               ^~~~~<br>osmo-bts/src/osmo-bts-litecell15/main.c:162:3: note: ‘snprintf’ output between 7 and 70 bytes into a destination of size 64<br>   snprintf(model_name, sizeof(model_name), "%s Rev %c",<br>   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br>    model_name, (char)rev);<br>    ~~~~~~~~~~~~~~~~~~~~~~<br>osmo-bts/src/osmo-bts-litecell15/main.c:168:47: warning: ‘ (’ directive output may be truncated writing 2 bytes into a region of size between 1 and 64 [-Wformat-truncation=]<br>   snprintf(model_name, sizeof(model_name), "%s (%05X)",<br>                                               ^~<br>osmo-bts/src/osmo-bts-litecell15/main.c:168:44: note: using the range [0, 4294967295] for directive argument<br>   snprintf(model_name, sizeof(model_name), "%s (%05X)",<br>                                            ^~~~~~~~~~~<br>osmo-bts/src/osmo-bts-litecell15/main.c:168:3: note: ‘snprintf’ output between 9 and 75 bytes into a destination of size 64<br>   snprintf(model_name, sizeof(model_name), "%s (%05X)",<br>   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br>    model_name, model);<br>    ~~~~~~~~~~~~~~~~~~<br><br>Change-Id: I079b056a04fe77d2f7f361ff5899232cb70b5a93<br>---<br>M src/osmo-bts-litecell15/main.c<br>M src/osmo-bts-litecell15/misc/lc15bts_bid.c<br>M src/osmo-bts-litecell15/misc/lc15bts_bid.h<br>M src/osmo-bts-litecell15/misc/lc15bts_mgr_nl.c<br>4 files changed, 26 insertions(+), 35 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/33/9533/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/src/osmo-bts-litecell15/main.c b/src/osmo-bts-litecell15/main.c</span><br><span>index 030c3ef..de175e3 100644</span><br><span>--- a/src/osmo-bts-litecell15/main.c</span><br><span>+++ b/src/osmo-bts-litecell15/main.c</span><br><span>@@ -151,25 +151,8 @@</span><br><span> </span><br><span> static void print_hwversion()</span><br><span> {</span><br><span style="color: hsl(0, 100%, 40%);">-   int rev;</span><br><span style="color: hsl(0, 100%, 40%);">-        int model;</span><br><span style="color: hsl(0, 100%, 40%);">-      static char model_name[64] = {0, };</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-     snprintf(model_name, sizeof(model_name), "NuRAN Litecell 1.5 BTS");</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-   rev = lc15bts_rev_get();</span><br><span style="color: hsl(0, 100%, 40%);">-        if (rev >= 0) {</span><br><span style="color: hsl(0, 100%, 40%);">-              snprintf(model_name, sizeof(model_name), "%s Rev %c", </span><br><span style="color: hsl(0, 100%, 40%);">-                        model_name, (char)rev);</span><br><span style="color: hsl(0, 100%, 40%);">- } </span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-      model = lc15bts_model_get();</span><br><span style="color: hsl(0, 100%, 40%);">-    if (model >= 0) {</span><br><span style="color: hsl(0, 100%, 40%);">-            snprintf(model_name, sizeof(model_name), "%s (%05X)", </span><br><span style="color: hsl(0, 100%, 40%);">-                        model_name, model);</span><br><span style="color: hsl(0, 100%, 40%);">-     }</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-       printf(model_name);</span><br><span style="color: hsl(120, 100%, 40%);">+   printf(get_hwversion_desc());</span><br><span style="color: hsl(120, 100%, 40%);">+ printf("\n");</span><br><span> }</span><br><span> </span><br><span> int bts_model_handle_options(int argc, char **argv)</span><br><span>diff --git a/src/osmo-bts-litecell15/misc/lc15bts_bid.c b/src/osmo-bts-litecell15/misc/lc15bts_bid.c</span><br><span>index 7f278bf..9284b62 100644</span><br><span>--- a/src/osmo-bts-litecell15/misc/lc15bts_bid.c</span><br><span>+++ b/src/osmo-bts-litecell15/misc/lc15bts_bid.c</span><br><span>@@ -138,3 +138,25 @@</span><br><span> </span><br><span>      return option;  </span><br><span> }</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+const char* get_hwversion_desc()</span><br><span style="color: hsl(120, 100%, 40%);">+{</span><br><span style="color: hsl(120, 100%, 40%);">+        int rev;</span><br><span style="color: hsl(120, 100%, 40%);">+        int model;</span><br><span style="color: hsl(120, 100%, 40%);">+        size_t len;</span><br><span style="color: hsl(120, 100%, 40%);">+        static char model_name[64] = {0, };</span><br><span style="color: hsl(120, 100%, 40%);">+        len = snprintf(model_name, sizeof(model_name), "NuRAN Litecell 1.5 BTS");</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+        rev = lc15bts_rev_get();</span><br><span style="color: hsl(120, 100%, 40%);">+        if (rev >= 0) {</span><br><span style="color: hsl(120, 100%, 40%);">+                len += snprintf(model_name + len, sizeof(model_name) - len,</span><br><span style="color: hsl(120, 100%, 40%);">+                                " Rev %c", (char)rev);</span><br><span style="color: hsl(120, 100%, 40%);">+        }</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+        model = lc15bts_model_get();</span><br><span style="color: hsl(120, 100%, 40%);">+        if (model >= 0) {</span><br><span style="color: hsl(120, 100%, 40%);">+                snprintf(model_name + len, sizeof(model_name) - len,</span><br><span style="color: hsl(120, 100%, 40%);">+                         "%s (%05X)", model_name, model);</span><br><span style="color: hsl(120, 100%, 40%);">+        }</span><br><span style="color: hsl(120, 100%, 40%);">+        return model_name;</span><br><span style="color: hsl(120, 100%, 40%);">+}</span><br><span>diff --git a/src/osmo-bts-litecell15/misc/lc15bts_bid.h b/src/osmo-bts-litecell15/misc/lc15bts_bid.h</span><br><span>index b320e11..a71fdd7 100644</span><br><span>--- a/src/osmo-bts-litecell15/misc/lc15bts_bid.h</span><br><span>+++ b/src/osmo-bts-litecell15/misc/lc15bts_bid.h</span><br><span>@@ -47,5 +47,6 @@</span><br><span> int lc15bts_rev_get(void);</span><br><span> int lc15bts_model_get(void);</span><br><span> int lc15bts_option_get(enum lc15bts_option_type type);</span><br><span style="color: hsl(120, 100%, 40%);">+const char* get_hwversion_desc();</span><br><span> </span><br><span> #endif</span><br><span>diff --git a/src/osmo-bts-litecell15/misc/lc15bts_mgr_nl.c b/src/osmo-bts-litecell15/misc/lc15bts_mgr_nl.c</span><br><span>index 549c179..3a617dd 100644</span><br><span>--- a/src/osmo-bts-litecell15/misc/lc15bts_mgr_nl.c</span><br><span>+++ b/src/osmo-bts-litecell15/misc/lc15bts_mgr_nl.c</span><br><span>@@ -104,8 +104,6 @@</span><br><span>      if (!fetched_info) {</span><br><span>                 int fd_eth;</span><br><span>          int serno;</span><br><span style="color: hsl(0, 100%, 40%);">-              int model;</span><br><span style="color: hsl(0, 100%, 40%);">-              int rev;</span><br><span> </span><br><span>                 /* fetch the MAC */</span><br><span>          fd_eth = open(ETH0_ADDR_SYSFS, O_RDONLY);</span><br><span>@@ -119,20 +117,7 @@</span><br><span>             lc15bts_par_get_int(tall_mgr_ctx, LC15BTS_PAR_SERNR, &serno);</span><br><span>            snprintf(ser_str, sizeof(ser_str), "%d", serno);</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-          /* fetch the model and trx number */</span><br><span style="color: hsl(0, 100%, 40%);">-            snprintf(model_name, sizeof(model_name), "Litecell 1.5 BTS");</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-         rev = lc15bts_rev_get();</span><br><span style="color: hsl(0, 100%, 40%);">-                if (rev >= 0) {</span><br><span style="color: hsl(0, 100%, 40%);">-                      snprintf(model_name, sizeof(model_name), "%s Rev %c", </span><br><span style="color: hsl(0, 100%, 40%);">-                                model_name, rev);</span><br><span style="color: hsl(0, 100%, 40%);">-               } </span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-              model = lc15bts_model_get();</span><br><span style="color: hsl(0, 100%, 40%);">-            if (model >= 0) {</span><br><span style="color: hsl(0, 100%, 40%);">-                    snprintf(model_name, sizeof(model_name), "%s (%05X)", </span><br><span style="color: hsl(0, 100%, 40%);">-                                model_name, model);</span><br><span style="color: hsl(0, 100%, 40%);">-             }</span><br><span style="color: hsl(120, 100%, 40%);">+             strncpy(model_name, get_hwversion_desc(), sizeof(model_name)-1);</span><br><span>             fetched_info = 1;</span><br><span>    }</span><br><span> </span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/9533">change 9533</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/9533"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: osmo-bts </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-MessageType: newchange </div>
<div style="display:none"> Gerrit-Change-Id: I079b056a04fe77d2f7f361ff5899232cb70b5a93 </div>
<div style="display:none"> Gerrit-Change-Number: 9533 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: Pau Espin Pedrol <pespin@sysmocom.de> </div>