aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc
diff options
context:
space:
mode:
authorNeels Hofmeyr <nhofmeyr@sysmocom.de>2016-12-07 14:49:39 +0100
committerNeels Hofmeyr <nhofmeyr@sysmocom.de>2016-12-08 01:38:58 +0100
commite2300f950e5dc2b2ef13ec6fdf99366e344a50f9 (patch)
tree037cb057a8b72b21e13fe7e9ebf49e568d746875 /openbsc
parenta162ba7a5dd72356fb28539da685cacf16b825b1 (diff)
store initial lu_fsm in gsm_subscriber_connection
Diffstat (limited to 'openbsc')
-rw-r--r--openbsc/include/openbsc/gsm_data.h3
-rw-r--r--openbsc/src/libmsc/gsm_04_08.c4
2 files changed, 5 insertions, 2 deletions
diff --git a/openbsc/include/openbsc/gsm_data.h b/openbsc/include/openbsc/gsm_data.h
index 09f8df1eb..a49fbc3c4 100644
--- a/openbsc/include/openbsc/gsm_data.h
+++ b/openbsc/include/openbsc/gsm_data.h
@@ -99,6 +99,9 @@ struct gsm_subscriber_connection {
* towards A/Iu */
uint32_t use_count;
+ /* Location Updating FSM, may not have a subscr yet */
+ struct osmo_fsm_inst *lu_fsm;
+
/* To whom we are allocated at the moment */
struct gsm_subscriber *subscr;
diff --git a/openbsc/src/libmsc/gsm_04_08.c b/openbsc/src/libmsc/gsm_04_08.c
index ab0f6a67e..59fdf7f00 100644
--- a/openbsc/src/libmsc/gsm_04_08.c
+++ b/openbsc/src/libmsc/gsm_04_08.c
@@ -488,8 +488,8 @@ static int mm_rx_loc_upd_req(struct gsm_subscriber_connection *conn, struct msgb
new_lai.lac = bts->location_area_code;
conn->lu_fsm = vlr_loc_update(conn->master_fsm, SUB_CON_E_LU_RES,
- g_vlr, conn, vlr_lu_type, tmsi, imsi,
- &old_lai, &new_lai);
+ g_vlr, conn, vlr_lu_type, tmsi,
+ imsi, &old_lai, &new_lai);
if (!conn->lu_fsm) {
DEBUGPC(DRR, "%s: Can't start LU FSM\n", mi_string);
return 0;