aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNeels Hofmeyr <neels@hofmeyr.de>2019-08-08 02:00:54 +0200
committerNeels Hofmeyr <neels@hofmeyr.de>2019-08-08 02:08:55 +0200
commit106ba523c8fdb078e619c9ce869701d2743b8141 (patch)
tree5b9800240c704f74575e810b6660e8bf7c81e38b
parent7ea0db8f292a444f04558c3dae253ef9d934b99c (diff)
vlr_lu_fsm: fix missing event for IMEISV
Event VLR_ULA_E_ID_IMEISV is listed as permitted in VLR_ULA_S_WAIT_LU_COMPL, but is missing from the switch() on the incoming event. So, sending an IMEISV identity during the WAIT_LU_COMPL state would crash osmo-msc. When receiving an IMEISV, vlr_subscr_set_imeisv() in turn calls vlr_subscr_set_imei(), so as far as the lu_fsm is concerned, receiving an IMEISV is identical to receiving an IMEI, and it can continue to send a Check IMEI request to the HLR. Thus simply add VLR_ULA_E_ID_IMEISV to the VLR_ULA_E_ID_IMEI switch case. Change-Id: I11106cb108a4b1406ff9a8b8ff5761440a274dad
-rw-r--r--src/libvlr/vlr_lu_fsm.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/libvlr/vlr_lu_fsm.c b/src/libvlr/vlr_lu_fsm.c
index 87bf7a5f2..454709f44 100644
--- a/src/libvlr/vlr_lu_fsm.c
+++ b/src/libvlr/vlr_lu_fsm.c
@@ -1253,6 +1253,7 @@ static void lu_fsm_wait_lu_compl(struct osmo_fsm_inst *fi, uint32_t event,
LU_COMPL_VLR_E_NEW_TMSI_ACK, NULL);
break;
case VLR_ULA_E_ID_IMEI:
+ case VLR_ULA_E_ID_IMEISV:
/* Got the IMEI from ME, now send it to HLR */
vlr_subscr_tx_req_check_imei(lfp->vsub);
break;