https://osmocom.org/https://osmocom.org/favicon.ico?16647414092019-12-03T23:02:43ZOpen Source Mobile CommunicationsOsmoHLR - Bug #4303: various minor issues about evaluation of rc = db_subscr_get_by_*()https://osmocom.org/issues/4303?journal_id=167292019-12-03T23:02:43Zneelsnhofmeyr@sysmocom.de
<ul><li><strong>Subject</strong> changed from <i>hlr_vty_subscr.c: subscriber_create_cmd: evaluate rc of rc = db_subscr_get_by_imsi(g_hlr->dbc, imsi, &subscr);</i> to <i>various minor issues about evaluation of rc = db_subscr_get_by_*()</i></li></ul><p>also show error in subscriber_msisdn_cmd<br /><pre>
if (db_subscr_get_by_msisdn(g_hlr->dbc, msisdn, &subscr) == 0)
osmo_hlr_subscriber_update_notify(&subscr);
</pre></p>
<p>and these should probably just do 'if (rc)' not '< 0':</p>
<pre><code>hlr_db_tool.c-325- if (rc < 0) {</code></pre>
<pre><code>hlr.c:412: if (db_subscr_get_by_imsi(g_hlr->dbc, gsup->imsi, &subscr) < 0) {</code></pre>
<pre><code>lu_fsm.c:138: if (db_subscr_get_by_imsi(g_hlr->dbc, update_location_req->gsup.imsi, &lu->subscr) < 0) {</code></pre>
<p>maybe this could differentiate between -ENOENT and actual database errors:</p>
<pre><code>mslookup_server.c-252- if (rc) {<br />mslookup_server.c-253- LOGP(DMSLOOKUP, LOGL_DEBUG, "%s: does not exist in local HLR\n",<br />mslookup_server.c-254- osmo_mslookup_result_name_c(OTC_SELECT, query, NULL));<br />mslookup_server.c-255- return false;<br />mslookup_server.c-256- }</code></pre>