From 8d34217ce440766d270bbebc37cd9f02f495a3af Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Leroy?= <frederic.leroy@b-com.com>
Date: Wed, 27 Jul 2016 07:15:46 -0500
Subject: [PATCH] UE: add user instance to itti messages

---
 openair3/NAS/UE/EMM/SAP/emm_as.c     | 12 ++++++++----
 openair3/NAS/UE/nas_itti_messaging.c | 16 ++++++++--------
 openair3/NAS/UE/nas_itti_messaging.h |  8 ++++----
 3 files changed, 20 insertions(+), 16 deletions(-)

diff --git a/openair3/NAS/UE/EMM/SAP/emm_as.c b/openair3/NAS/UE/EMM/SAP/emm_as.c
index 2112b59164..d833b5bba0 100644
--- a/openair3/NAS/UE/EMM/SAP/emm_as.c
+++ b/openair3/NAS/UE/EMM/SAP/emm_as.c
@@ -991,7 +991,8 @@ static int _emm_as_send(const nas_user_t *user, const emm_as_t *msg)
     case AS_CELL_INFO_REQ: {
       nas_itti_cell_info_req(
         as_msg.msg.cell_info_req.plmnID,
-        as_msg.msg.cell_info_req.rat);
+        as_msg.msg.cell_info_req.rat,
+        user->ueid);
       LOG_FUNC_RETURN (RETURNok);
     }
     break;
@@ -1003,7 +1004,8 @@ static int _emm_as_send(const nas_user_t *user, const emm_as_t *msg)
         as_msg.msg.nas_establish_req.s_tmsi,
         as_msg.msg.nas_establish_req.plmnID,
         as_msg.msg.nas_establish_req.initialNasMsg.data,
-        as_msg.msg.nas_establish_req.initialNasMsg.length);
+        as_msg.msg.nas_establish_req.initialNasMsg.length,
+        user->ueid);
       LOG_FUNC_RETURN (RETURNok);
     }
     break;
@@ -1012,7 +1014,8 @@ static int _emm_as_send(const nas_user_t *user, const emm_as_t *msg)
       nas_itti_ul_data_req(
         as_msg.msg.ul_info_transfer_req.UEid,
         as_msg.msg.ul_info_transfer_req.nasMsg.data,
-        as_msg.msg.ul_info_transfer_req.nasMsg.length);
+        as_msg.msg.ul_info_transfer_req.nasMsg.length,
+        user->ueid);
       LOG_FUNC_RETURN (RETURNok);
     }
     break;
@@ -1021,7 +1024,8 @@ static int _emm_as_send(const nas_user_t *user, const emm_as_t *msg)
       nas_itti_rab_establish_rsp(
         as_msg.msg.rab_establish_rsp.s_tmsi,
         as_msg.msg.rab_establish_rsp.rabID,
-        as_msg.msg.rab_establish_rsp.errCode);
+        as_msg.msg.rab_establish_rsp.errCode,
+        user->ueid);
       LOG_FUNC_RETURN (RETURNok);
     }
     break;
diff --git a/openair3/NAS/UE/nas_itti_messaging.c b/openair3/NAS/UE/nas_itti_messaging.c
index 7667ad50a4..b6b2126dfb 100644
--- a/openair3/NAS/UE/nas_itti_messaging.c
+++ b/openair3/NAS/UE/nas_itti_messaging.c
@@ -213,7 +213,7 @@ int nas_itti_kenb_refresh_req(const Byte_t kenb[32])
   return itti_send_msg_to_task(TASK_RRC_UE, NB_eNB_INST + 0 /* TODO to be virtualized */, message_p);
 }
 
-int nas_itti_cell_info_req(const plmn_t plmnID, const Byte_t rat)
+int nas_itti_cell_info_req(const plmn_t plmnID, const Byte_t rat, int user_id)
 {
   MessageDef *message_p;
 
@@ -230,10 +230,10 @@ int nas_itti_cell_info_req(const plmn_t plmnID, const Byte_t rat)
   	  plmnID.MCCdigit1, plmnID.MCCdigit2, plmnID.MCCdigit3,
   	  plmnID.MNCdigit1, plmnID.MNCdigit2, plmnID.MNCdigit3);
 
-  return itti_send_msg_to_task(TASK_RRC_UE, NB_eNB_INST + 0 /* TODO to be virtualized */, message_p);
+  return itti_send_msg_to_task(TASK_RRC_UE, NB_eNB_INST + user_id, message_p);
 }
 
-int nas_itti_nas_establish_req(as_cause_t cause, as_call_type_t type, as_stmsi_t s_tmsi, plmn_t plmnID, Byte_t *data, uint32_t length)
+int nas_itti_nas_establish_req(as_cause_t cause, as_call_type_t type, as_stmsi_t s_tmsi, plmn_t plmnID, Byte_t *data, uint32_t length, int user_id)
 {
   MessageDef *message_p;
 
@@ -255,10 +255,10 @@ int nas_itti_nas_establish_req(as_cause_t cause, as_call_type_t type, as_stmsi_t
   	     plmnID.MCCdigit1, plmnID.MCCdigit2, plmnID.MCCdigit3,
   	     plmnID.MNCdigit1, plmnID.MNCdigit2, plmnID.MNCdigit3);
 
-  return itti_send_msg_to_task(TASK_RRC_UE, NB_eNB_INST + 0 /* TODO to be virtualized */, message_p);
+  return itti_send_msg_to_task(TASK_RRC_UE, NB_eNB_INST + user_id, message_p);
 }
 
-int nas_itti_ul_data_req(const uint32_t ue_id, void *const data, const uint32_t length)
+int nas_itti_ul_data_req(const uint32_t ue_id, void *const data, const uint32_t length, int user_id)
 {
   MessageDef *message_p;
 
@@ -268,10 +268,10 @@ int nas_itti_ul_data_req(const uint32_t ue_id, void *const data, const uint32_t
   NAS_UPLINK_DATA_REQ(message_p).nasMsg.data   = data;
   NAS_UPLINK_DATA_REQ(message_p).nasMsg.length = length;
 
-  return itti_send_msg_to_task(TASK_RRC_UE, NB_eNB_INST + 0 /* TODO to be virtualized */, message_p);
+  return itti_send_msg_to_task(TASK_RRC_UE, NB_eNB_INST + user_id, message_p);
 }
 
-int nas_itti_rab_establish_rsp(const as_stmsi_t s_tmsi, const as_rab_id_t rabID, const nas_error_code_t errCode)
+int nas_itti_rab_establish_rsp(const as_stmsi_t s_tmsi, const as_rab_id_t rabID, const nas_error_code_t errCode, int user_id)
 {
   MessageDef *message_p;
 
@@ -287,5 +287,5 @@ int nas_itti_rab_establish_rsp(const as_stmsi_t s_tmsi, const as_rab_id_t rabID,
   	      NULL,0,
   	     "0 NAS_RAB_ESTABLI_RSP MME code %u m-TMSI %u rb id %u status %u",
   	     s_tmsi.MMEcode, s_tmsi.m_tmsi,rabID, errCode );
-  return itti_send_msg_to_task(TASK_RRC_UE, NB_eNB_INST + 0 /* TODO to be virtualized */, message_p);
+  return itti_send_msg_to_task(TASK_RRC_UE, NB_eNB_INST + user_id, message_p);
 }
diff --git a/openair3/NAS/UE/nas_itti_messaging.h b/openair3/NAS/UE/nas_itti_messaging.h
index 22c09f109b..f4f1f18414 100644
--- a/openair3/NAS/UE/nas_itti_messaging.h
+++ b/openair3/NAS/UE/nas_itti_messaging.h
@@ -50,12 +50,12 @@ int nas_itti_protected_msg(
 
 int nas_itti_kenb_refresh_req(const Byte_t kenb[32]);
 
-int nas_itti_cell_info_req(const plmn_t plmnID, const Byte_t rat);
+int nas_itti_cell_info_req(const plmn_t plmnID, const Byte_t rat, int user_id);
 
-int nas_itti_nas_establish_req(as_cause_t cause, as_call_type_t type, as_stmsi_t s_tmsi, plmn_t plmnID, Byte_t *data_pP, uint32_t lengthP);
+int nas_itti_nas_establish_req(as_cause_t cause, as_call_type_t type, as_stmsi_t s_tmsi, plmn_t plmnID, Byte_t *data_pP, uint32_t lengthP, int user_id);
 
-int nas_itti_ul_data_req(const uint32_t ue_idP, void *const data_pP, const uint32_t lengthP);
+int nas_itti_ul_data_req(const uint32_t ue_idP, void *const data_pP, const uint32_t lengthP, int user_id);
 
-int nas_itti_rab_establish_rsp(const as_stmsi_t s_tmsi, const as_rab_id_t rabID, const nas_error_code_t errCode);
+int nas_itti_rab_establish_rsp(const as_stmsi_t s_tmsi, const as_rab_id_t rabID, const nas_error_code_t errCode, int user_id);
 # endif
 #endif /* NAS_ITTI_MESSAGING_H_ */
-- 
GitLab