From 81e70dfc25e87c63eac442d500ffe5147f45d2c9 Mon Sep 17 00:00:00 2001
From: Robert Schmidt <robert.schmidt@eurecom.fr>
Date: Wed, 4 Jul 2018 15:17:27 +0200
Subject: [PATCH]  NAS First REQ: Forward selected PLMN Identity

---
 openair2/COMMON/s1ap_messages_types.h | 4 ++++
 openair2/RRC/LTE/rrc_eNB_S1AP.c       | 1 +
 2 files changed, 5 insertions(+)

diff --git a/openair2/COMMON/s1ap_messages_types.h b/openair2/COMMON/s1ap_messages_types.h
index 6f7aab9422..f56a340cb2 100644
--- a/openair2/COMMON/s1ap_messages_types.h
+++ b/openair2/COMMON/s1ap_messages_types.h
@@ -376,6 +376,10 @@ typedef struct s1ap_nas_first_req_s {
   /* UE id for initial connection to S1AP */
   uint16_t ue_initial_id;
 
+  /* the chosen PLMN identity as index, see TS 36.331 6.2.2 RRC Connection
+   * Setup Complete. This index here is zero-based, unlike the standard! */
+  int selected_plmn_identity;
+
   /* Establishment cause as sent by UE */
   rrc_establishment_cause_t establishment_cause;
 
diff --git a/openair2/RRC/LTE/rrc_eNB_S1AP.c b/openair2/RRC/LTE/rrc_eNB_S1AP.c
index 2c28dd4e0f..5eb495f37b 100644
--- a/openair2/RRC/LTE/rrc_eNB_S1AP.c
+++ b/openair2/RRC/LTE/rrc_eNB_S1AP.c
@@ -757,6 +757,7 @@ rrc_eNB_send_S1AP_NAS_FIRST_REQ(
 
       /* selected_plmn_identity: IE is 1-based, convert to 0-based (C array) */
       int selected_plmn_identity = rrcConnectionSetupComplete->selectedPLMN_Identity - 1;
+      S1AP_NAS_FIRST_REQ(message_p).selected_plmn_identity = selected_plmn_identity;
 
       if (rrcConnectionSetupComplete->registeredMME != NULL) {
         /* Fill GUMMEI */
-- 
GitLab