Unverified Commit f922e11b authored by zyddnys's avatar zyddnys Committed by GitHub

Merge branch 'aligungr:master' into master

parents 700f3049 04a4dbbb
......@@ -207,7 +207,7 @@ void NasMm::performMmCycle()
if (currentTai.hasValue() &&
!nas::utils::TaiListContains(m_storage->taiList->get(), nas::VTrackingAreaIdentity{currentTai}))
{
if (m_rmState == ERmState::RM_REGISTERED)
if (!m_storage->taiList->get().list.empty() && m_rmState == ERmState::RM_REGISTERED)
mobilityUpdatingRequired(ERegUpdateCause::ENTER_UNLISTED_TRACKING_AREA);
}
else
......
......@@ -297,15 +297,19 @@ void NasMm::receiveInitialRegistrationAccept(const nas::RegistrationAccept &msg)
return;
// Store the TAI list as a registration area
if (msg.taiList.has_value() && nas::utils::TaiListSize(*msg.taiList) == 0)
if (msg.taiList.has_value())
{
m_logger->err("Invalid TAI list size");
sendMmStatus(nas::EMmCause::SEMANTICALLY_INCORRECT_MESSAGE);
return;
if (nas::utils::TaiListSize(*msg.taiList) == 0)
{
m_logger->err("Invalid TAI list size");
sendMmStatus(nas::EMmCause::SEMANTICALLY_INCORRECT_MESSAGE);
return;
}
m_storage->taiList->set(*msg.taiList);
}
m_storage->taiList->set(msg.taiList.value_or(nas::IE5gsTrackingAreaIdentityList{}));
if (currentTai.hasValue() &&
nas::utils::TaiListContains(m_storage->taiList->get(), nas::VTrackingAreaIdentity{currentTai}))
if (nas::utils::TaiListContains(m_storage->taiList->get(), nas::VTrackingAreaIdentity{currentTai}))
m_storage->lastVisitedRegisteredTai->set(currentTai);
// Store the service area list
......@@ -451,10 +455,11 @@ void NasMm::receiveMobilityRegistrationAccept(const nas::RegistrationAccept &msg
}
m_storage->taiList->set(*msg.taiList);
if (nas::utils::TaiListContains(*msg.taiList, nas::VTrackingAreaIdentity{currentTai}))
m_storage->lastVisitedRegisteredTai->set(currentTai);
}
if (nas::utils::TaiListContains(m_storage->taiList->get(), nas::VTrackingAreaIdentity{currentTai}))
m_storage->lastVisitedRegisteredTai->set(currentTai);
// Store the E-PLMN list and ..
m_storage->equivalentPlmnList->clear();
if (msg.equivalentPLMNs.has_value())
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment