gmm

package
v0.3.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 25, 2025 License: Apache-2.0 Imports: 24 Imported by: 0

Documentation

Overview

Copyright 2024 Ella Networks

Copyright 2024 Ella Networks

Index

Constants

View Source
const (
	GmmMessageEvent                fsm.EventType = "Gmm Message"
	StartAuthEvent                 fsm.EventType = "Start Authentication"
	AuthSuccessEvent               fsm.EventType = "Authentication Success"
	AuthRestartEvent               fsm.EventType = "Authentication Restart"
	AuthFailEvent                  fsm.EventType = "Authentication Fail"
	AuthErrorEvent                 fsm.EventType = "Authentication Error"
	SecurityModeSuccessEvent       fsm.EventType = "SecurityMode Success"
	SecurityModeFailEvent          fsm.EventType = "SecurityMode Fail"
	SecuritySkipEvent              fsm.EventType = "Security Skip"
	SecurityModeAbortEvent         fsm.EventType = "SecurityMode Abort"
	ContextSetupSuccessEvent       fsm.EventType = "ContextSetup Success"
	ContextSetupFailEvent          fsm.EventType = "ContextSetup Fail"
	InitDeregistrationEvent        fsm.EventType = "Initialize Deregistration"
	NwInitiatedDeregistrationEvent fsm.EventType = "Network Initiated Deregistration Event"
	SliceInfoDeleteEvent           fsm.EventType = "Slice Info Delete Event"
	SliceInfoAddEvent              fsm.EventType = "Slice Info Add Event"
	DeregistrationAcceptEvent      fsm.EventType = "Deregistration Accept"
)
View Source
const (
	ArgAmfUe               string = "AMF Ue"
	ArgNASMessage          string = "NAS Message"
	ArgProcedureCode       string = "Procedure Code"
	ArgAccessType          string = "Access Type"
	ArgEAPSuccess          string = "EAP Success"
	ArgEAPMessage          string = "EAP Message"
	Arg3GPPDeregistered    string = "3GPP Deregistered"
	ArgNon3GPPDeregistered string = "Non3GPP Deregistered"
	ArgNssai               string = "Nssai"
)

Variables

View Source
var GmmFSM *fsm.FSM

Functions

func AnTypeToNas

func AnTypeToNas(anType models.AccessType) uint8

func Authentication

func Authentication(ctx ctxt.Context, state *fsm.State, event fsm.EventType, args fsm.ArgsType)

func AuthenticationProcedure

func AuthenticationProcedure(ctx ctxt.Context, ue *context.AmfUe, accessType models.AccessType) (bool, error)

func ContextSetup

func ContextSetup(ctx ctxt.Context, state *fsm.State, event fsm.EventType, args fsm.ArgsType)

func DeRegistered

func DeRegistered(ctx ctxt.Context, state *fsm.State, event fsm.EventType, args fsm.ArgsType)

func DeregisteredInitiated

func DeregisteredInitiated(ctx ctxt.Context, state *fsm.State, event fsm.EventType, args fsm.ArgsType)

func HandleAuthenticationError

func HandleAuthenticationError(ue *context.AmfUe, anType models.AccessType) error

func HandleAuthenticationFailure

func HandleAuthenticationFailure(ctx ctxt.Context, ue *context.AmfUe, anType models.AccessType, authenticationFailure *nasMessage.AuthenticationFailure) error

func HandleAuthenticationResponse

func HandleAuthenticationResponse(ctx ctxt.Context, ue *context.AmfUe, accessType models.AccessType, authenticationResponse *nasMessage.AuthenticationResponse) error

TS 24.501 5.4.1

func HandleConfigurationUpdateComplete

func HandleConfigurationUpdateComplete(ue *context.AmfUe, configurationUpdateComplete *nasMessage.ConfigurationUpdateComplete) error

func HandleDeregistrationAccept

func HandleDeregistrationAccept(ctx ctxt.Context, ue *context.AmfUe, anType models.AccessType,
	deregistrationAccept *nasMessage.DeregistrationAcceptUETerminatedDeregistration,
) error

TS 23.502 4.2.2.3

func HandleDeregistrationRequest

func HandleDeregistrationRequest(ctx ctxt.Context, ue *context.AmfUe, anType models.AccessType,
	deregistrationRequest *nasMessage.DeregistrationRequestUEOriginatingDeregistration,
) error

TS 23.502 4.2.2.3

func HandleIdentityResponse

func HandleIdentityResponse(ue *context.AmfUe, identityResponse *nasMessage.IdentityResponse) error

func HandleInitialRegistration

func HandleInitialRegistration(ctx ctxt.Context, ue *context.AmfUe, anType models.AccessType) error

func HandleMobilityAndPeriodicRegistrationUpdating

func HandleMobilityAndPeriodicRegistrationUpdating(ctx ctxt.Context, ue *context.AmfUe, anType models.AccessType) error

func HandleNotificationResponse

func HandleNotificationResponse(ctx ctxt.Context, ue *context.AmfUe, notificationResponse *nasMessage.NotificationResponse) error

TS 24501 5.6.3.2

func HandleRegistrationComplete

func HandleRegistrationComplete(ctx ctxt.Context, ue *context.AmfUe, accessType models.AccessType, registrationComplete *nasMessage.RegistrationComplete) error

func HandleRegistrationRequest

func HandleRegistrationRequest(ctx ctxt.Context, ue *context.AmfUe, anType models.AccessType, procedureCode int64, registrationRequest *nasMessage.RegistrationRequest) error

Handle cleartext IEs of Registration Request, which cleattext IEs defined in TS 24.501 4.4.6

func HandleSecurityModeComplete

func HandleSecurityModeComplete(ctx ctxt.Context, ue *context.AmfUe, anType models.AccessType, procedureCode int64, securityModeComplete *nasMessage.SecurityModeComplete) error

TS 33.501 6.7.2

func HandleSecurityModeReject

func HandleSecurityModeReject(ue *context.AmfUe, anType models.AccessType,
	securityModeReject *nasMessage.SecurityModeReject,
) error

func HandleServiceRequest

func HandleServiceRequest(ctx ctxt.Context, ue *context.AmfUe, anType models.AccessType, serviceRequest *nasMessage.ServiceRequest) error

TS 24501 5.6.1

func HandleStatus5GMM

func HandleStatus5GMM(ue *context.AmfUe, anType models.AccessType, status5GMM *nasMessage.Status5GMM) error

func HandleULNASTransport

func HandleULNASTransport(ctx ctxt.Context, ue *context.AmfUe, anType models.AccessType, ulNasTransport *nasMessage.ULNASTransport) error

func IdentityVerification

func IdentityVerification(ue *context.AmfUe) bool

func NetworkInitiatedDeregistrationProcedure

func NetworkInitiatedDeregistrationProcedure(ctx ctxt.Context, ue *context.AmfUe, accessType models.AccessType) (err error)

func PlmnIDStringToModels added in v0.0.12

func PlmnIDStringToModels(plmnIDStr string) models.PlmnID

func Registered

func Registered(ctx ctxt.Context, state *fsm.State, event fsm.EventType, args fsm.ArgsType)

func SecurityMode

func SecurityMode(ctx ctxt.Context, state *fsm.State, event fsm.EventType, args fsm.ArgsType)

func SetDeregisteredState

func SetDeregisteredState(amfUe *context.AmfUe, anType uint8)

Types

This section is empty.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL