aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNeels Hofmeyr <neels@hofmeyr.de>2017-11-22 20:39:59 +0100
committerNeels Hofmeyr <neels@hofmeyr.de>2017-11-22 20:49:43 +0100
commit33cbde9ced8f16181c6f71a4a890f4dc0976ba63 (patch)
tree7f85b855633030cce801d862f0eb98baec7cf1de
parent671db90ac316665edb8894c204d44d26ba97e5c3 (diff)
return GMM_CAUSE_IMSI_UNKNOWN if there is no auth data
If we have a subscriber entry that lacks auth data, we currently return GMM_CAUSE_NET_FAIL, which in the MSC log looks like the HLR is not connected or something grave. Instead, return GMM_CAUSE_IMSI_UNKNOWN. This changes the OsmoMSC log in this way: Before: DVLR <001e> VLR_Authenticate(901700000014701)[0x5555558dabb0]{VLR_SUB_AS_NEEDS_AUTH_WAIT_AI}: GSUP: rx Auth Info Error cause: 17: Network failure After: DVLR <001e> VLR_Authenticate(901700000014701)[0x5555558dabb0]{VLR_SUB_AS_NEEDS_AUTH_WAIT_AI}: GSUP: rx Auth Info Error cause: 2: IMSI unknown in HLR A better cause value would be something that says "IMSI known, but we have no auth data", but since such cause value is not defined, the plain "IMSI unknown" seems to be the best match. Change-Id: I90df7b255317df1e5d968e7ce3b9d2c404b98db8
-rw-r--r--src/hlr.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/hlr.c b/src/hlr.c
index ef008f0..bcae3b5 100644
--- a/src/hlr.c
+++ b/src/hlr.c
@@ -71,6 +71,7 @@ static int rx_send_auth_info(struct osmo_gsup_conn *conn,
gsup_out.message_type = OSMO_GSUP_MSGT_SEND_AUTH_INFO_ERROR;
switch (rc) {
case 0:
+ case -ENOENT:
gsup_out.cause = GMM_CAUSE_IMSI_UNKNOWN;
break;
default: