Fix the bug of the TAU update result value #568

This commit is contained in:
Sukchan Lee 2020-11-01 22:50:41 -05:00
parent d1e643ed6c
commit 21595426b2
5 changed files with 24 additions and 8 deletions

View File

@ -368,7 +368,16 @@ ogs_pkbuf_t *emm_build_tau_accept(mme_ue_t *mme_ue)
message.emm.h.protocol_discriminator = OGS_NAS_PROTOCOL_DISCRIMINATOR_EMM;
message.emm.h.message_type = OGS_NAS_EPS_TRACKING_AREA_UPDATE_ACCEPT;
tau_accept->eps_update_result.result = mme_ue->nas_eps.update.value;
if (mme_ue->nas_eps.update.value ==
OGS_NAS_EPS_UPDATE_TYPE_COMBINED_TA_LA_UPDATING ||
mme_ue->nas_eps.update.value ==
OGS_NAS_EPS_UPDATE_TYPE_COMBINED_TA_LA_UPDATING_WITH_IMSI_ATTACH) {
tau_accept->eps_update_result.result =
OGS_NAS_EPS_UPDATE_RESULT_COMBINED_TA_LA_UPDATED;
} else {
tau_accept->eps_update_result.result =
OGS_NAS_EPS_UPDATE_RESULT_TA_UPDATED;
}
/* Set T3412 */
tau_accept->presencemask |=

View File

@ -325,7 +325,8 @@ static void test1_func(abts_case *tc, void *data)
test_ue->tau_request_param.mobile_station_classmark_2 = 1;
test_ue->tau_request_param.ue_usage_setting = 1;
test_ue->tau_request_param.device_properties = 1;
emmbuf = testemm_build_tau_request(test_ue, true);
emmbuf = testemm_build_tau_request(
test_ue, true, OGS_NAS_EPS_UPDATE_TYPE_TA_UPDATING);
ABTS_PTR_NOTNULL(tc, emmbuf);
sendbuf = test_s1ap_build_initial_ue_message(
test_ue, emmbuf, S1AP_RRC_Establishment_Cause_mo_Signalling, true);
@ -371,7 +372,9 @@ static void test1_func(abts_case *tc, void *data)
test_ue->tau_request_param.mobile_station_classmark_2 = 1;
test_ue->tau_request_param.ue_usage_setting = 1;
test_ue->tau_request_param.device_properties = 1;
emmbuf = testemm_build_tau_request(test_ue, false);
emmbuf = testemm_build_tau_request(
test_ue, false,
OGS_NAS_EPS_UPDATE_TYPE_COMBINED_TA_LA_UPDATING_WITH_IMSI_ATTACH);
ABTS_PTR_NOTNULL(tc, emmbuf);
sendbuf = test_s1ap_build_initial_ue_message(
test_ue, emmbuf, S1AP_RRC_Establishment_Cause_mo_Signalling, true);
@ -695,7 +698,8 @@ static void test2_func(abts_case *tc, void *data)
test_ue->tau_request_param.ue_usage_setting = 1;
test_ue->tau_request_param.old_guti_type = 1;
test_ue->tau_request_param.ms_network_feature_support = 1;
emmbuf = testemm_build_tau_request(test_ue, false);
emmbuf = testemm_build_tau_request(
test_ue, false, OGS_NAS_EPS_UPDATE_TYPE_PERIODIC_UPDATING);
ABTS_PTR_NOTNULL(tc, emmbuf);
sendbuf = test_s1ap_build_initial_ue_message(
test_ue, emmbuf, S1AP_RRC_Establishment_Cause_mo_Signalling, true);

View File

@ -503,7 +503,8 @@ ogs_pkbuf_t *testemm_build_service_request(test_ue_t *test_ue)
return pkbuf;
}
ogs_pkbuf_t *testemm_build_tau_request(test_ue_t *test_ue, bool active_flag)
ogs_pkbuf_t *testemm_build_tau_request(
test_ue_t *test_ue, bool active_flag, uint8_t update_type)
{
ogs_nas_eps_message_t message;
ogs_nas_eps_tracking_area_update_request_t *tau_request =
@ -563,7 +564,7 @@ ogs_pkbuf_t *testemm_build_tau_request(test_ue_t *test_ue, bool active_flag)
eps_update_type->nas_key_set_identifier = test_ue->nas.ksi;
eps_update_type->active_flag = active_flag;
eps_update_type->value = OGS_NAS_EPS_UPDATE_TYPE_COMBINED_TA_LA_UPDATING;
eps_update_type->value = update_type;
old_guti->length = sizeof(ogs_nas_eps_mobile_identity_guti_t);
old_guti->guti.odd_even = OGS_NAS_MOBILE_IDENTITY_EVEN;

View File

@ -37,7 +37,8 @@ ogs_pkbuf_t *testemm_build_attach_complete(
ogs_pkbuf_t *testemm_build_detach_request(test_ue_t *test_ue, bool switch_off);
ogs_pkbuf_t *testemm_build_service_request(test_ue_t *test_ue);
ogs_pkbuf_t *testemm_build_tau_request(test_ue_t *test_ue, bool active_flag);
ogs_pkbuf_t *testemm_build_tau_request(
test_ue_t *test_ue, bool active_flag, uint8_t update_type);
ogs_pkbuf_t *testemm_build_emm_status(
test_ue_t *test_ue, ogs_nas_emm_cause_t emm_cause);

View File

@ -486,7 +486,8 @@ static void test1_func(abts_case *tc, void *data)
test_ue->tau_request_param.tmsi_status = 1;
test_ue->tau_request_param.mobile_station_classmark_2 = 1;
test_ue->tau_request_param.ue_usage_setting = 1;
emmbuf = testemm_build_tau_request(test_ue, false);
emmbuf = testemm_build_tau_request(
test_ue, false, OGS_NAS_EPS_UPDATE_TYPE_COMBINED_TA_LA_UPDATING);
ABTS_PTR_NOTNULL(tc, emmbuf);
sendbuf = test_s1ap_build_uplink_nas_transport(test_ue, emmbuf);
ABTS_PTR_NOTNULL(tc, sendbuf);