aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNeels Hofmeyr <neels@hofmeyr.de>2020-05-04 19:20:23 +0200
committerNeels Hofmeyr <neels@hofmeyr.de>2020-05-04 19:24:26 +0200
commit9b8e7b4e3970a92e859f6e8ffd73086aa49546cb (patch)
treee498fe2c16cbda0c2ee67bf81611962d5200e159
parent010ceb82062750eab56f05b712e32650f5c34bfd (diff)
hlr_subscr_nam(): fix condition to fix nam=false notifications
Firstly, vlr_number[] is an array and we need to check the first char for nul instead of the pointer. Also, osmo_ipa_name_set_str() returns zero on success, so the condition is reversed. hlr_subscr_nam() was rewritten in I3a8dff3d4a1cbe10d6ab08257a0138d6b2a082d9 ad868e29ba1b838f151cdf2ad9cb4f068a817493 and this likely fixes a bug introduced there. Related: coverity CID#210169 Change-Id: I3a0e9ed4b865c88aa4a6341a3bf1a96c10d20ed9
-rw-r--r--src/hlr.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/hlr.c b/src/hlr.c
index 7b803e7..e4d6c23 100644
--- a/src/hlr.c
+++ b/src/hlr.c
@@ -268,9 +268,9 @@ int hlr_subscr_nam(struct hlr *hlr, struct hlr_subscriber *subscr, bool nam_val,
if (nam_val)
return 0;
- if (subscr->vlr_number && osmo_ipa_name_set_str(&vlr_name, subscr->vlr_number))
+ if (subscr->vlr_number[0] && !osmo_ipa_name_set_str(&vlr_name, subscr->vlr_number))
osmo_gsup_enc_send_to_ipa_name(g_hlr->gs, &vlr_name, &gsup_del_data);
- if (subscr->sgsn_number && osmo_ipa_name_set_str(&vlr_name, subscr->sgsn_number))
+ if (subscr->sgsn_number[0] && !osmo_ipa_name_set_str(&vlr_name, subscr->sgsn_number))
osmo_gsup_enc_send_to_ipa_name(g_hlr->gs, &vlr_name, &gsup_del_data);
return 0;
}