Commit 5f666d76 authored by aligungr's avatar aligungr

Merge branch 'dev' of https://github.com/aligungr/UERANSIM

parents 5ec6c48f 6d51a5c1
......@@ -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())
{
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.value_or(nas::IE5gsTrackingAreaIdentityList{}));
if (currentTai.hasValue() &&
nas::utils::TaiListContains(m_storage->taiList->get(), nas::VTrackingAreaIdentity{currentTai}))
m_storage->taiList->set(*msg.taiList);
}
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