-
Notifications
You must be signed in to change notification settings - Fork 110
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix: HoldingAmfUe restore when CM-Idle #141
Conversation
Hi @ss920386 Could you please help to review this PR? Tks. |
ranUe.FindAmfUe = nil | ||
} else { | ||
// New AmfUe | ||
ranUe.AmfUe = amfSelf.NewAmfUe("") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The case of Service Request
UE context is in CM-IDLE state.
if err != nil { | ||
ue.AmfUe.NASLog.Errorln(err) | ||
ranUe.AmfUe.NASLog.Errorln(err) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Assume that we have an existing UE context, which is in CM-CONNECTED state.
We will release it if the new UE context has a valid security context in line 53.
internal/nas/handler.go
Outdated
if ranUe.AmfUe == nil { | ||
if ranUe.FindAmfUe != nil && !ranUe.FindAmfUe.CmConnect(ranUe.Ran.AnType) { | ||
// models.CmState_IDLE | ||
gmm_common.ClearHoldingRanUe(ranUe.FindAmfUe.RanUe[ranUe.Ran.AnType]) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
!ranUe.FindAmfUe.CmConnect(ranUe.Ran.AnType)
implies that ranUe.FinAmfUe didn't have underlying ranUe, right?
Shouldn't ClearHoldingRanUe(ranUe.FindAmfUe.RanUe[ranUe.Ran.AnType]) do nothing?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The ClearHoldingRanUe(ranUe.FindAmfUe.RanUe[ranUe.Ran.AnType])
do noting.
This line had been remove in the latest commit.
Thanks a lot. @ianchen0119 & @ss920386 |
Description
This PR fixes the issue that if the UE is in CM-Idle state, the UE initiating ServiceRequest will require authentication again.
Others
FindAmfUE
toHoldingAmfUe