<p>fixeria has uploaded this change for <strong>review</strong>.</p><p><a href="https://gerrit.osmocom.org/c/osmo-bsc/+/26150">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">ipaccess-config: request and print NM_ATT_IPACC_NV_FLAGS<br><br>Below is an example output:<br><br>"""<br>  Received SIGNAL S_NM_GET_ATTR_REP<br>  {<br>      "primary_oml_ip": "192.168.100.100",<br>      "primary_oml_port": "0",<br>      "unit_id": "6969/0/0",<br>      "nv_flags": {<br>          "static-ip": "no",<br>          "static-gw": "no",<br>          "no-dhcp-vsi": "no",<br>          "dhcp-enabled": "yes",<br>          "led-enabled": "yes",<br>          "secondary-oml-enabled": "yes",<br>          "diag-enabled": "yes",<br>          "cli-enabled": "yes",<br>          "http-enabled": "no",<br>          "post-enabled": "yes",<br>          "snmp-enabled": "yes",<br>      }<br>  }<br>"""<br><br>Change-Id: Ic901910878529e6d8b152b3417463bae60644b82<br>---<br>M src/ipaccess/ipaccess-config.c<br>1 file changed, 23 insertions(+), 0 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://gerrit.osmocom.org:29418/osmo-bsc refs/changes/50/26150/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/src/ipaccess/ipaccess-config.c b/src/ipaccess/ipaccess-config.c</span><br><span>index b10959c..493644b 100644</span><br><span>--- a/src/ipaccess/ipaccess-config.c</span><br><span>+++ b/src/ipaccess/ipaccess-config.c</span><br><span>@@ -268,6 +268,8 @@</span><br><span>  return 0;</span><br><span> }</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+static const struct value_string ipa_nvflag_strs[];</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> static int print_attr_rep(struct msgb *mb)</span><br><span> {</span><br><span>         /* Parse using nanoBTS own formatting for Get Attribute Response */</span><br><span>@@ -303,6 +305,26 @@</span><br><span>   print_field("primary_oml_port", "%u", oml_port);</span><br><span>         print_field("unit_id", "%s", unit_id);</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+        uint16_t Fx = (TLVP_VAL(&tp, NM_ATT_IPACC_NV_FLAGS)[2] << 8)</span><br><span style="color: hsl(120, 100%, 40%);">+                    | (TLVP_VAL(&tp, NM_ATT_IPACC_NV_FLAGS)[0] << 0);</span><br><span style="color: hsl(120, 100%, 40%);">+       uint16_t Mx = (TLVP_VAL(&tp, NM_ATT_IPACC_NV_FLAGS)[3] << 8)</span><br><span style="color: hsl(120, 100%, 40%);">+                    | (TLVP_VAL(&tp, NM_ATT_IPACC_NV_FLAGS)[1] << 0);</span><br><span style="color: hsl(120, 100%, 40%);">+       const struct value_string *nvflag = ipa_nvflag_strs;</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+        print_offset("\"nv_flags\": {\n");</span><br><span style="color: hsl(120, 100%, 40%);">+        indent++;</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span style="color: hsl(120, 100%, 40%);">+   while (nvflag->value != 0x00 && nvflag->str != NULL) {</span><br><span style="color: hsl(120, 100%, 40%);">+          const char *val = (Fx & nvflag->value) ? "yes" : "no";</span><br><span style="color: hsl(120, 100%, 40%);">+             if (~Mx & nvflag->value)</span><br><span style="color: hsl(120, 100%, 40%);">+                       val = "unknown";</span><br><span style="color: hsl(120, 100%, 40%);">+            print_field(nvflag->str, "%s", val);</span><br><span style="color: hsl(120, 100%, 40%);">+             nvflag++;</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%);">+   indent--;</span><br><span style="color: hsl(120, 100%, 40%);">+     print_offset("}\n");</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span>     indent--;</span><br><span>    print_offset("}\n");</span><br><span> </span><br><span>@@ -557,6 +579,7 @@</span><br><span>     if (get_attr) {</span><br><span>              msgb_put_u8(nmsg_get, NM_ATT_IPACC_PRIM_OML_CFG);</span><br><span>            msgb_put_u8(nmsg_get, NM_ATT_IPACC_UNIT_ID);</span><br><span style="color: hsl(120, 100%, 40%);">+          msgb_put_u8(nmsg_get, NM_ATT_IPACC_NV_FLAGS);</span><br><span>        }</span><br><span>    if (unit_id) {</span><br><span>               len = strlen(unit_id);</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-bsc/+/26150">change 26150</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/c/osmo-bsc/+/26150"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: osmo-bsc </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: Ic901910878529e6d8b152b3417463bae60644b82 </div>
<div style="display:none"> Gerrit-Change-Number: 26150 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: fixeria <vyanitskiy@sysmocom.de> </div>
<div style="display:none"> Gerrit-MessageType: newchange </div>