udm

package
v0.3.0 Latest Latest
Warning

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

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

Documentation

Index

Constants

View Source
const (
	AuthenticationManagementField = "8000"
	EncryptionAlgorithm           = 0
	EncryptionKey                 = 0
	OpValue                       = ""
)
View Source
const (
	SqnMAx int64 = 0x7FFFFFFFFFF
)

Variables

View Source
var AllowedSscModes = []string{
	"SSC_MODE_2",
	"SSC_MODE_3",
}

Functions

func EditAuthenticationSubscription added in v0.0.5

func EditAuthenticationSubscription(ctx context.Context, ueID string, sequenceNumber string) error

func EditRegistrationAmf3gppAccess

func EditRegistrationAmf3gppAccess(ctx context.Context, registerRequest models.Amf3GppAccessRegistration, ueID string) error

TS 29.503 5.3.2.2.2

func GetAmDataAndSetAMSubscription added in v0.0.5

func GetAmDataAndSetAMSubscription(ctx context.Context, supi string) (*models.AccessAndMobilitySubscriptionData, error)

func GetAndSetSmData added in v0.0.5

func GetAndSetSmData(ctx context.Context, supi string, Dnn string, Snssai string) ([]models.SessionManagementSubscriptionData, error)

func GetAndSetSmfSelectData added in v0.0.5

func GetAndSetSmfSelectData(ctx context.Context, supi string) (*models.SmfSelectionSubscriptionData, error)

func GetAuthSubsData added in v0.0.5

func GetAuthSubsData(ctx context.Context, ueID string) (*models.AuthenticationSubscription, error)

func GetNssai

func GetNssai(ctx context.Context, supi string) (*models.Nssai, error)

func GetUeContextInSmfData

func GetUeContextInSmfData(ctx context.Context, supi string) (*models.UeContextInSmfData, error)

func SetDBInstance added in v0.0.12

func SetDBInstance(dbInstance *db.Database)

func Start

func Start(dbInstance *db.Database) error

Types

type UDMContext

type UDMContext struct {
	DBInstance *db.Database
	UdmUePool  sync.Map // map[supi]*UdmUeContext
}

func (*UDMContext) CreateAmf3gppRegContext

func (context *UDMContext) CreateAmf3gppRegContext(supi string, body models.Amf3GppAccessRegistration)

func (*UDMContext) CreateSmfSelectionSubsDataforUe

func (context *UDMContext) CreateSmfSelectionSubsDataforUe(supi string, body models.SmfSelectionSubscriptionData)

functions for SmfSelectionSubscriptionData

func (*UDMContext) CreateUeContextInSmfDataforUe

func (context *UDMContext) CreateUeContextInSmfDataforUe(supi string, body models.UeContextInSmfData)

functions related UecontextInSmfData

func (*UDMContext) ManageSmData

func (context *UDMContext) ManageSmData(smDatafromUDR []models.SessionManagementSubscriptionData, snssaiFromReq string, dnnFromReq string) (map[string]models.SessionManagementSubscriptionData, error)

func (*UDMContext) NewUdmUe

func (context *UDMContext) NewUdmUe(supi string) *UdmUeContext

func (*UDMContext) UdmUeFindBySupi

func (context *UDMContext) UdmUeFindBySupi(supi string) (*UdmUeContext, bool)

type UdmUeContext

type UdmUeContext struct {
	Supi                              string
	Gpsi                              string
	Nssai                             *models.Nssai
	Amf3GppAccessRegistration         *models.Amf3GppAccessRegistration
	AccessAndMobilitySubscriptionData *models.AccessAndMobilitySubscriptionData
	SmfSelSubsData                    *models.SmfSelectionSubscriptionData
	UeCtxtInSmfData                   *models.UeContextInSmfData
	SessionManagementSubsData         map[string]models.SessionManagementSubscriptionData
	SubscribeToNotifChange            map[string]*models.SdmSubscription
	SubscribeToNotifSharedDataChange  *models.SdmSubscription
	PduSessionID                      string

	SmSubsDataLock sync.RWMutex
	// contains filtered or unexported fields
}

func (*UdmUeContext) CreateSubscriptiontoNotifChange

func (udmUeContext *UdmUeContext) CreateSubscriptiontoNotifChange(subscriptionID string, body *models.SdmSubscription)

functions related to sdmSubscription (subscribe to notification of data change)

func (*UdmUeContext) SetAMSubsriptionData

func (udmUeContext *UdmUeContext) SetAMSubsriptionData(amData *models.AccessAndMobilitySubscriptionData)

func (*UdmUeContext) SetSMSubsData

func (udmUeContext *UdmUeContext) SetSMSubsData(smSubsData map[string]models.SessionManagementSubscriptionData)

SetSMSubsData ... functions to set SessionManagementSubsData

func (*UdmUeContext) SetSmfSelectionSubsData

func (udmUeContext *UdmUeContext) SetSmfSelectionSubsData(smfSelSubsData *models.SmfSelectionSubscriptionData)

SetSmfSelectionSubsData ... functions to set SmfSelectionSubscriptionData

Jump to

Keyboard shortcuts

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