From dcba8c19ae6e4ab5507a168658bbe12561d30ed8 Mon Sep 17 00:00:00 2001
From: gauthier <lionel.gauthier@eurecom.fr>
Date: Thu, 14 Jan 2016 18:26:27 +0100
Subject: [PATCH] Sent of S_TMSI OK
---
openair2/RRC/LITE/rrc_eNB_S1AP.c | 23 ++++++++++++++++-------
1 file changed, 16 insertions(+), 7 deletions(-)
diff --git a/openair2/RRC/LITE/rrc_eNB_S1AP.c b/openair2/RRC/LITE/rrc_eNB_S1AP.c
index 5c41658862..f07a071b07 100644
--- a/openair2/RRC/LITE/rrc_eNB_S1AP.c
+++ b/openair2/RRC/LITE/rrc_eNB_S1AP.c
@@ -43,6 +43,7 @@
# include "RRC/LITE/defs.h"
# include "rrc_eNB_UE_context.h"
# include "rrc_eNB_S1AP.h"
+# include "enb_config.h"
# if defined(ENABLE_ITTI)
# include "asn1_conversions.h"
@@ -661,15 +662,16 @@ rrc_eNB_send_S1AP_NAS_FIRST_REQ(
S1AP_NAS_FIRST_REQ (message_p).ue_identity.s_tmsi.mme_code = s_TMSI->mme_code;
S1AP_NAS_FIRST_REQ (message_p).ue_identity.s_tmsi.m_tmsi = s_TMSI->m_tmsi;
LOG_I(S1AP, "[eNB %d] Build S1AP_NAS_FIRST_REQ with s_TMSI: MME code %u M-TMSI %u ue %x\n",
- ctxt_pP->module_id,
- S1AP_NAS_FIRST_REQ (message_p).ue_identity.s_tmsi.mme_code,
- S1AP_NAS_FIRST_REQ (message_p).ue_identity.s_tmsi.m_tmsi,
- ue_context_pP->ue_context.rnti);
+ ctxt_pP->module_id,
+ S1AP_NAS_FIRST_REQ (message_p).ue_identity.s_tmsi.mme_code,
+ S1AP_NAS_FIRST_REQ (message_p).ue_identity.s_tmsi.m_tmsi,
+ ue_context_pP->ue_context.rnti);
}
if (rrcConnectionSetupComplete->registeredMME != NULL) {
/* Fill GUMMEI */
struct RegisteredMME *r_mme = rrcConnectionSetupComplete->registeredMME;
+ int selected_plmn_identity = rrcConnectionSetupComplete->selectedPLMN_Identity;
S1AP_NAS_FIRST_REQ (message_p).ue_identity.presenceMask |= UE_IDENTITIES_gummei;
@@ -678,9 +680,9 @@ rrc_eNB_send_S1AP_NAS_FIRST_REQ(
/* Use first indicated PLMN MCC if it is defined */
S1AP_NAS_FIRST_REQ (message_p).ue_identity.gummei.mcc = *r_mme->plmn_Identity->mcc->list.array[0];
LOG_I(S1AP, "[eNB %d] Build S1AP_NAS_FIRST_REQ adding in s_TMSI: GUMMEI MCC %u ue %x\n",
- ctxt_pP->module_id,
- S1AP_NAS_FIRST_REQ (message_p).ue_identity.gummei.mcc,
- ue_context_pP->ue_context.rnti);
+ ctxt_pP->module_id,
+ S1AP_NAS_FIRST_REQ (message_p).ue_identity.gummei.mcc,
+ ue_context_pP->ue_context.rnti);
}
if (r_mme->plmn_Identity->mnc.list.count > 0) {
@@ -691,6 +693,13 @@ rrc_eNB_send_S1AP_NAS_FIRST_REQ(
S1AP_NAS_FIRST_REQ (message_p).ue_identity.gummei.mnc,
ue_context_pP->ue_context.rnti);
}
+ } else {
+ const Enb_properties_array_t *enb_properties_p = NULL;
+ enb_properties_p = enb_config_get();
+
+ // actually the eNB configuration contains only one PLMN (can be up to 6)
+ S1AP_NAS_FIRST_REQ (message_p).ue_identity.gummei.mcc = enb_properties_p->properties[ctxt_pP->module_id]->mcc;
+ S1AP_NAS_FIRST_REQ (message_p).ue_identity.gummei.mnc = enb_properties_p->properties[ctxt_pP->module_id]->mnc;
}
S1AP_NAS_FIRST_REQ (message_p).ue_identity.gummei.mme_code = BIT_STRING_to_uint8 (&r_mme->mmec);
--
GitLab