UE/EMM/LowerLayer: move ueid to nas_user_t
This commit is contained in:
@@ -88,7 +88,6 @@ static struct {
|
||||
** Description: Notify the EPS Mobility Management entity that data have **
|
||||
** been successfully delivered to the network **
|
||||
** **
|
||||
** Inputs: ueid: UE lower layer identifier **
|
||||
** Others: None **
|
||||
** **
|
||||
** Outputs: None **
|
||||
@@ -96,7 +95,7 @@ static struct {
|
||||
** Others: None **
|
||||
** **
|
||||
***************************************************************************/
|
||||
int lowerlayer_success(nas_user_t *user, unsigned int ueid)
|
||||
int lowerlayer_success(nas_user_t *user)
|
||||
{
|
||||
LOG_FUNC_IN;
|
||||
|
||||
@@ -104,7 +103,7 @@ int lowerlayer_success(nas_user_t *user, unsigned int ueid)
|
||||
int rc;
|
||||
|
||||
emm_sap.primitive = EMMREG_LOWERLAYER_SUCCESS;
|
||||
emm_sap.u.emm_reg.ueid = ueid;
|
||||
emm_sap.u.emm_reg.ueid = user->ueid;
|
||||
rc = emm_sap_send(user, &emm_sap);
|
||||
|
||||
LOG_FUNC_RETURN (rc);
|
||||
@@ -117,7 +116,6 @@ int lowerlayer_success(nas_user_t *user, unsigned int ueid)
|
||||
** Description: Notify the EPS Mobility Management entity that lower la- **
|
||||
** yers failed to deliver data to the network **
|
||||
** **
|
||||
** Inputs: ueid: UE lower layer identifier **
|
||||
** Others: None **
|
||||
** **
|
||||
** Outputs: None **
|
||||
@@ -125,7 +123,7 @@ int lowerlayer_success(nas_user_t *user, unsigned int ueid)
|
||||
** Others: None **
|
||||
** **
|
||||
***************************************************************************/
|
||||
int lowerlayer_failure(nas_user_t *user, unsigned int ueid)
|
||||
int lowerlayer_failure(nas_user_t *user)
|
||||
{
|
||||
LOG_FUNC_IN;
|
||||
|
||||
@@ -133,7 +131,7 @@ int lowerlayer_failure(nas_user_t *user, unsigned int ueid)
|
||||
int rc;
|
||||
|
||||
emm_sap.primitive = EMMREG_LOWERLAYER_FAILURE;
|
||||
emm_sap.u.emm_reg.ueid = ueid;
|
||||
emm_sap.u.emm_reg.ueid = user->ueid;
|
||||
rc = emm_sap_send(user, &emm_sap);
|
||||
|
||||
LOG_FUNC_RETURN (rc);
|
||||
@@ -191,7 +189,7 @@ int lowerlayer_release(nas_user_t *user, int cause)
|
||||
user->emm_data->ecm_status = ECM_IDLE;
|
||||
|
||||
emm_sap.primitive = EMMREG_LOWERLAYER_RELEASE;
|
||||
emm_sap.u.emm_reg.ueid = 0;
|
||||
emm_sap.u.emm_reg.ueid = user->ueid;
|
||||
rc = emm_sap_send(user, &emm_sap);
|
||||
|
||||
LOG_FUNC_RETURN (rc);
|
||||
@@ -204,7 +202,6 @@ int lowerlayer_release(nas_user_t *user, int cause)
|
||||
** Description: Notify the EPS Session Management entity that data have **
|
||||
** been received from lower layers **
|
||||
** **
|
||||
** Inputs: ueid: UE lower layer identifier **
|
||||
** data: Data transfered from lower layers **
|
||||
** Others: None **
|
||||
** **
|
||||
@@ -213,7 +210,7 @@ int lowerlayer_release(nas_user_t *user, int cause)
|
||||
** Others: None **
|
||||
** **
|
||||
***************************************************************************/
|
||||
int lowerlayer_data_ind(nas_user_t *user, unsigned int ueid, const OctetString *data)
|
||||
int lowerlayer_data_ind(nas_user_t *user, const OctetString *data)
|
||||
{
|
||||
esm_sap_t esm_sap;
|
||||
int rc;
|
||||
@@ -223,7 +220,7 @@ int lowerlayer_data_ind(nas_user_t *user, unsigned int ueid, const OctetString *
|
||||
|
||||
esm_sap.primitive = ESM_UNITDATA_IND;
|
||||
esm_sap.is_standalone = TRUE;
|
||||
esm_sap.ueid = ueid;
|
||||
esm_sap.ueid = user->ueid;
|
||||
|
||||
esm_sap.recv = data;
|
||||
rc = esm_sap_send(user, &esm_sap);
|
||||
@@ -238,7 +235,6 @@ int lowerlayer_data_ind(nas_user_t *user, unsigned int ueid, const OctetString *
|
||||
** Description: Notify the EPS Mobility Management entity that data have **
|
||||
** to be transfered to lower layers **
|
||||
** **
|
||||
** Inputs: ueid: UE lower layer identifier **
|
||||
** data: Data to be transfered to lower layers **
|
||||
** Others: None **
|
||||
** **
|
||||
@@ -247,7 +243,7 @@ int lowerlayer_data_ind(nas_user_t *user, unsigned int ueid, const OctetString *
|
||||
** Others: None **
|
||||
** **
|
||||
***************************************************************************/
|
||||
int lowerlayer_data_req(nas_user_t *user, unsigned int ueid, const OctetString *data)
|
||||
int lowerlayer_data_req(nas_user_t *user, const OctetString *data)
|
||||
{
|
||||
LOG_FUNC_IN;
|
||||
|
||||
@@ -258,7 +254,7 @@ int lowerlayer_data_req(nas_user_t *user, unsigned int ueid, const OctetString *
|
||||
|
||||
emm_sap.primitive = EMMAS_DATA_REQ;
|
||||
emm_sap.u.emm_as.u.data.guti = user->emm_data->guti;
|
||||
emm_sap.u.emm_as.u.data.ueid = 0;
|
||||
emm_sap.u.emm_as.u.data.ueid = user->ueid;
|
||||
sctx = user->emm_data->security;
|
||||
|
||||
emm_sap.u.emm_as.u.data.NASinfo = 0;
|
||||
|
||||
@@ -79,13 +79,12 @@ typedef int (*lowerlayer_release_callback_t)(void *);
|
||||
/****************** E X P O R T E D F U N C T I O N S ******************/
|
||||
/****************************************************************************/
|
||||
|
||||
// FIXME prototype with ueid
|
||||
int lowerlayer_success(nas_user_t *user, unsigned int ueid);
|
||||
int lowerlayer_failure(nas_user_t *user, unsigned int ueid);
|
||||
int lowerlayer_success(nas_user_t *user);
|
||||
int lowerlayer_failure(nas_user_t *user);
|
||||
int lowerlayer_establish(nas_user_t *user);
|
||||
int lowerlayer_release(nas_user_t *user, int cause);
|
||||
|
||||
int lowerlayer_data_ind(nas_user_t *user, unsigned int ueid, const OctetString *data);
|
||||
int lowerlayer_data_req(nas_user_t *user, unsigned int ueid, const OctetString *data);
|
||||
int lowerlayer_data_ind(nas_user_t *user, const OctetString *data);
|
||||
int lowerlayer_data_req(nas_user_t *user, const OctetString *data);
|
||||
|
||||
#endif /* __LOWERLAYER_H__*/
|
||||
|
||||
@@ -446,18 +446,18 @@ static int _emm_as_data_ind(nas_user_t *user, const emm_as_data_t *msg, int *emm
|
||||
EPS_SESSION_MANAGEMENT_MESSAGE) {
|
||||
const OctetString data = {bytes, (uint8_t *)plain_msg};
|
||||
/* Foward ESM data to EPS session management */
|
||||
rc = lowerlayer_data_ind(user, msg->ueid, &data);
|
||||
rc = lowerlayer_data_ind(user, &data);
|
||||
}
|
||||
|
||||
free(plain_msg);
|
||||
}
|
||||
} else {
|
||||
/* Process successfull lower layer transfer indication */
|
||||
rc = lowerlayer_success(user, msg->ueid);
|
||||
rc = lowerlayer_success(user);
|
||||
}
|
||||
} else {
|
||||
/* Process lower layer transmission failure of NAS message */
|
||||
rc = lowerlayer_failure(user, msg->ueid);
|
||||
rc = lowerlayer_failure(user);
|
||||
}
|
||||
|
||||
LOG_FUNC_RETURN (rc);
|
||||
@@ -496,7 +496,7 @@ static int _emm_as_establish_cnf(nas_user_t *user, const emm_as_establish_t *msg
|
||||
} else {
|
||||
/* The initial NAS message has been successfully delivered to
|
||||
* lower layers */
|
||||
rc = lowerlayer_success(user, 0);
|
||||
rc = lowerlayer_success(user);
|
||||
LOG_FUNC_RETURN (rc);
|
||||
}
|
||||
|
||||
@@ -571,7 +571,7 @@ static int _emm_as_establish_rej(nas_user_t *user)
|
||||
"failure");
|
||||
|
||||
/* Process lower layer transmission failure of initial NAS message */
|
||||
rc = lowerlayer_failure(user, 0);
|
||||
rc = lowerlayer_failure(user);
|
||||
|
||||
LOG_FUNC_RETURN (rc);
|
||||
}
|
||||
|
||||
@@ -149,7 +149,7 @@ int emm_esm_send(nas_user_t *user, const emm_esm_t *msg)
|
||||
|
||||
case _EMMESM_UNITDATA_REQ:
|
||||
/* ESM requests EMM to transfer ESM data unit to lower layer */
|
||||
rc = lowerlayer_data_req(user, msg->ueid, &msg->u.data.msg);
|
||||
rc = lowerlayer_data_req(user, &msg->u.data.msg);
|
||||
break;
|
||||
|
||||
default:
|
||||
|
||||
@@ -71,6 +71,7 @@ void *nas_ue_task(void *args_p)
|
||||
nas_user_t user_value = {};
|
||||
nas_user_t *user = &user_value;
|
||||
|
||||
user->ueid = 0;
|
||||
|
||||
itti_mark_task_ready (TASK_NAS_UE);
|
||||
MSC_START_USE();
|
||||
|
||||
@@ -59,6 +59,7 @@ Description NAS type definition to manage a user equipment
|
||||
#include "at_response.h"
|
||||
|
||||
typedef struct {
|
||||
int ueid; /* UE lower layer identifier */
|
||||
int fd;
|
||||
proc_data_t proc;
|
||||
// Eps Session Management
|
||||
|
||||
Reference in New Issue
Block a user