aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/osmocom/msc/vlr.h2
-rw-r--r--src/libmsc/gsm_04_08_cc.c4
-rw-r--r--src/libmsc/gsm_09_11.c2
-rw-r--r--src/libmsc/gsm_subscriber.c4
-rw-r--r--src/libmsc/msc_vty.c2
-rw-r--r--src/libvlr/vlr_lu_fsm.c2
-rw-r--r--tests/msc_vlr/msc_vlr_test_call.c2
-rw-r--r--tests/msc_vlr/msc_vlr_test_ss.c2
8 files changed, 9 insertions, 11 deletions
diff --git a/include/osmocom/msc/vlr.h b/include/osmocom/msc/vlr.h
index 2f31063a6..20a9c0f24 100644
--- a/include/osmocom/msc/vlr.h
+++ b/include/osmocom/msc/vlr.h
@@ -142,9 +142,7 @@ struct vlr_subscr {
/* Newly allocated TMSI that was not yet acked by MS */
uint32_t tmsi_new;
- /* some redundancy in information below? */
struct osmo_cell_global_id cgi; /* 2.4.16 */
- uint16_t lac; /* 2.4.2 */
char imeisv[GSM23003_IMEISV_NUM_DIGITS+1]; /* 2.2.3 */
char imei[GSM23003_IMEISV_NUM_DIGITS+1]; /* 2.1.9 */
diff --git a/src/libmsc/gsm_04_08_cc.c b/src/libmsc/gsm_04_08_cc.c
index 5500f6f28..5567da9d0 100644
--- a/src/libmsc/gsm_04_08_cc.c
+++ b/src/libmsc/gsm_04_08_cc.c
@@ -1939,7 +1939,7 @@ int mncc_tx_to_cc(struct gsm_network *net, int msg_type, void *arg)
GSM48_CC_CAUSE_UNASSIGNED_NR);
}
/* If subscriber is not "attached" */
- if (!vsub->lac) {
+ if (!vsub->cgi.lai.lac) {
DEBUGP(DCC, "(bts - trx - ts - ti -- sub %s) "
"Received '%s' from MNCC with "
"detached subscriber %s\n", data->called.number,
@@ -1978,7 +1978,7 @@ int mncc_tx_to_cc(struct gsm_network *net, int msg_type, void *arg)
"unallocated channel, paging already "
"started for lac %d.\n",
data->called.number,
- get_mncc_name(msg_type), vsub->lac);
+ get_mncc_name(msg_type), vsub->cgi.lai.lac);
vlr_subscr_put(vsub);
trans_free(trans);
return 0;
diff --git a/src/libmsc/gsm_09_11.c b/src/libmsc/gsm_09_11.c
index 43bf48c56..3ee6e9247 100644
--- a/src/libmsc/gsm_09_11.c
+++ b/src/libmsc/gsm_09_11.c
@@ -287,7 +287,7 @@ static struct gsm_trans *establish_nc_ss_trans(struct gsm_network *net,
}
/* If subscriber is not "attached" */
- if (!vsub->lac) {
+ if (!vsub->cgi.lai.lac) {
LOGP(DMM, LOGL_ERROR, "Network-originated session "
"rejected - subscriber is not attached\n");
return NULL;
diff --git a/src/libmsc/gsm_subscriber.c b/src/libmsc/gsm_subscriber.c
index 188807e92..0e76efc11 100644
--- a/src/libmsc/gsm_subscriber.c
+++ b/src/libmsc/gsm_subscriber.c
@@ -116,12 +116,12 @@ static int msc_paging_request(struct vlr_subscr *vsub)
* SCCP connections (if any). */
switch (vsub->cs.attached_via_ran) {
case RAN_GERAN_A:
- return a_iface_tx_paging(vsub->imsi, vsub->tmsi, vsub->lac);
+ return a_iface_tx_paging(vsub->imsi, vsub->tmsi, vsub->cgi.lai.lac);
case RAN_UTRAN_IU:
return ranap_iu_page_cs(vsub->imsi,
vsub->tmsi == GSM_RESERVED_TMSI?
NULL : &vsub->tmsi,
- vsub->lac);
+ vsub->cgi.lai.lac);
default:
break;
}
diff --git a/src/libmsc/msc_vty.c b/src/libmsc/msc_vty.c
index 5622c024c..3079bc3a0 100644
--- a/src/libmsc/msc_vty.c
+++ b/src/libmsc/msc_vty.c
@@ -631,7 +631,7 @@ static void subscr_dump_full_vty(struct vty *vty, struct vlr_subscr *vsub)
vty_out(vty, " Extension: %s%s", vsub->msisdn,
VTY_NEWLINE);
vty_out(vty, " LAC: %d/0x%x%s",
- vsub->lac, vsub->lac, VTY_NEWLINE);
+ vsub->cgi.lai.lac, vsub->cgi.lai.lac, VTY_NEWLINE);
vty_out(vty, " RAN: %s%s",
ran_type_name(vsub->cs.attached_via_ran), VTY_NEWLINE);
vty_out(vty, " IMSI: %s%s", vsub->imsi, VTY_NEWLINE);
diff --git a/src/libvlr/vlr_lu_fsm.c b/src/libvlr/vlr_lu_fsm.c
index 5d171d5ed..e635305fa 100644
--- a/src/libvlr/vlr_lu_fsm.c
+++ b/src/libvlr/vlr_lu_fsm.c
@@ -950,7 +950,7 @@ static int assoc_lfp_with_sub(struct osmo_fsm_inst *fi, struct vlr_subscr *vsub)
vsub->lu_fsm = fi;
vsub->msc_conn_ref = lfp->msc_conn_ref;
/* FIXME: send new LAC to HLR? */
- vsub->lac = lfp->new_lai.lac;
+ vsub->cgi.lai.lac = lfp->new_lai.lac;
lfp->vsub = vsub;
/* Tell MSC to associate this subscriber with the given
* connection */
diff --git a/tests/msc_vlr/msc_vlr_test_call.c b/tests/msc_vlr/msc_vlr_test_call.c
index 4a4f2436a..b1ff2c0f3 100644
--- a/tests/msc_vlr/msc_vlr_test_call.c
+++ b/tests/msc_vlr/msc_vlr_test_call.c
@@ -154,7 +154,7 @@ static void standard_lu()
vsub = vlr_subscr_find_by_imsi(net->vlr, IMSI);
VERBOSE_ASSERT(vsub != NULL, == true, "%d");
VERBOSE_ASSERT(strcmp(vsub->imsi, IMSI), == 0, "%d");
- VAL_ASSERT("LAC", vsub->lac, == 23, "%u");
+ VAL_ASSERT("LAC", vsub->cgi.lai.lac, == 23, "%u");
vlr_subscr_put(vsub);
}
diff --git a/tests/msc_vlr/msc_vlr_test_ss.c b/tests/msc_vlr/msc_vlr_test_ss.c
index 4e8077eb7..832293c52 100644
--- a/tests/msc_vlr/msc_vlr_test_ss.c
+++ b/tests/msc_vlr/msc_vlr_test_ss.c
@@ -68,7 +68,7 @@ static void perform_lu(void)
vsub = vlr_subscr_find_by_imsi(net->vlr, IMSI);
VERBOSE_ASSERT(vsub != NULL, == true, "%d");
VERBOSE_ASSERT(strcmp(vsub->imsi, IMSI), == 0, "%d");
- VAL_ASSERT("LAC", vsub->lac, == 23, "%u");
+ VAL_ASSERT("LAC", vsub->cgi.lai.lac, == 23, "%u");
vlr_subscr_put(vsub);
bss_sends_clear_complete();