From 260e696c8b184a72eb4b836ab2555ba611ddfabd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Leroy?= <frederic.leroy@b-com.com> Date: Tue, 26 Jul 2016 11:38:03 +0200 Subject: [PATCH] UE: move nvram data filename to nas_user_t --- openair3/NAS/UE/nas_ue_task.c | 7 +++++++ openair3/NAS/UE/nas_user.c | 13 ++----------- openair3/NAS/UE/user_defs.h | 1 + 3 files changed, 10 insertions(+), 11 deletions(-) diff --git a/openair3/NAS/UE/nas_ue_task.c b/openair3/NAS/UE/nas_ue_task.c index 3d45f5ac1b..af176bd169 100644 --- a/openair3/NAS/UE/nas_ue_task.c +++ b/openair3/NAS/UE/nas_ue_task.c @@ -102,6 +102,13 @@ void *nas_ue_task(void *args_p) exit(EXIT_FAILURE); } + /* Get UE's data pathname */ + user->user_nvdata_store = memory_get_path(USER_NVRAM_DIRNAME, USER_NVRAM_FILENAME); + if ( user->user_nvdata_store == NULL ) { + LOG_E(NAS, "[UE %d] - Failed to get USIM data application filename", user->ueid); + exit(EXIT_FAILURE); + } + /* Initialize user interface (to exchange AT commands with user process) */ nas_user_api_id_initialize(user); user->user_at_commands = calloc_or_fail(sizeof(user_at_commands_t)); diff --git a/openair3/NAS/UE/nas_user.c b/openair3/NAS/UE/nas_user.c index 3756570ea0..27f632831e 100644 --- a/openair3/NAS/UE/nas_user.c +++ b/openair3/NAS/UE/nas_user.c @@ -161,20 +161,11 @@ void nas_user_initialize(nas_user_t *user, emm_indication_callback_t emm_cb, user->nas_user_nvdata = calloc_or_fail(sizeof(user_nvdata_t)); - /* Get UE's data pathname */ - char *path = memory_get_path(USER_NVRAM_DIRNAME, USER_NVRAM_FILENAME); - - if (path == NULL) { - LOG_TRACE(ERROR, "USR-MAIN - Failed to get UE's data pathname"); - exit(EXIT_FAILURE); - } - /* Get UE data stored in the non-volatile memory device */ - int rc = memory_read(path, user->nas_user_nvdata, sizeof(user_nvdata_t)); + int rc = memory_read(user->usim_data_store, user->nas_user_nvdata, sizeof(user_nvdata_t)); if (rc != RETURNok) { - LOG_TRACE(ERROR, "USR-MAIN - Failed to read %s", path); + LOG_TRACE(ERROR, "USR-MAIN - Failed to read %s", user->nas_user_nvdata); } - free(path); user->nas_user_context = calloc_or_fail(sizeof(nas_user_context_t)); _nas_user_context_initialize(user->nas_user_context, version); diff --git a/openair3/NAS/UE/user_defs.h b/openair3/NAS/UE/user_defs.h index caa2017f8d..ac16e39ef6 100644 --- a/openair3/NAS/UE/user_defs.h +++ b/openair3/NAS/UE/user_defs.h @@ -77,6 +77,7 @@ typedef struct { usim_data_t usim_data; // USIM application data const char *usim_data_store; // USIM application data filename user_nvdata_t *nas_user_nvdata; //UE parameters stored in the UE's non-volatile memory device + const char *user_nvdata_store; //UE parameters stored in the UE's non-volatile memory device // nas_user_context_t *nas_user_context; at_response_t *at_response; // data structure returned to the user as the result of NAS procedure function call -- GitLab