diff options
author | Pau Espin Pedrol <pespin@sysmocom.de> | 2024-01-09 10:27:16 +0100 |
---|---|---|
committer | Pau Espin Pedrol <pespin@sysmocom.de> | 2024-01-15 10:38:14 +0100 |
commit | a94e823416a808d6315fda8e9f005843b97ac45d (patch) | |
tree | 18b5d45abebcdfc97c37f707f47d14c12b627568 | |
parent | a8aa16e1eb4a95580c103c4bec9e5e1a41815782 (diff) |
NAS_Templates: Allow passing old_guti and ptmsi_sig to TAU Req template
Change-Id: I5e0204e772edefc49a63b73fc4aad2fed5c14cac
-rw-r--r-- | library/NAS_Templates.ttcn | 42 |
1 files changed, 37 insertions, 5 deletions
diff --git a/library/NAS_Templates.ttcn b/library/NAS_Templates.ttcn index 76527209..4b5758e6 100644 --- a/library/NAS_Templates.ttcn +++ b/library/NAS_Templates.ttcn @@ -142,13 +142,21 @@ ts_NAS_MobileId_IMEI(hexstring imei) := { } template (value) EPS_MobileIdentityV -ts_NAS_MobileId_GUTI(hexstring mcc_mnc, OCT2 mmegi, OCT1 mmec, OCT4 tmsi) := { +ts_NAS_MobileId_GUTI_fields(hexstring mcc_mnc, OCT2 mmegi, OCT1 mmec, OCT4 tmsi) := { typeOfIdentity := '110'B, oddEvenInd_identity := { guti := ts_NAS_GUTI(mcc_mnc, mmegi, mmec, tmsi) } } +template (value) EPS_MobileIdentityV +ts_NAS_MobileId_GUTI(template (value) GUTI guti) := { + typeOfIdentity := '110'B, + oddEvenInd_identity := { + guti := guti + } +} + /* 9.9.3.12 EPS mobile identity */ template (value) EPS_MobileIdentityLV ts_EPS_MobileId_IMSI(hexstring imsi) := { @@ -162,7 +170,29 @@ ts_EPS_MobileId_IMEI(hexstring imei) := { template (value) EPS_MobileIdentityLV ts_EPS_MobileId_GUTI(hexstring mcc_mnc, OCT2 mmegi, OCT1 mmec, OCT4 tmsi) := { - ePS_MobileIdentity := ts_NAS_MobileId_GUTI(mcc_mnc, mmegi, mmec, tmsi) + ePS_MobileIdentity := ts_NAS_MobileId_GUTI_fields(mcc_mnc, mmegi, mmec, tmsi) +} + +template (value) EPS_MobileIdentityLV +ts_EPS_MobileId_GUTI_(template (value) GUTI guti) := { + ePS_MobileIdentity := ts_NAS_MobileId_GUTI(guti) +} + +/* 9.9.3.26 P-TMSI signature */ +template (value) P_TMSISignatureTV +ts_PTMSI_SignatureTV(template (value) OCT3 ptmsi_sig) := { + elementIdentifier := '19'O, + valueField := ptmsi_sig +} + +/* 9.9.3.45 GUTI Type */ +const BIT1 GUTI_TYPE_NATIVE := '0'B; +const BIT1 GUTI_TYPE_MAPPED := '1'B; +template (value) GUTI_TypeTV +ts_GUTI_TypeTV(template (value) BIT1 guti_type) := { + gUTI_Type := guti_type, + spare := '000'B, + elementIdentifier := '1110'B } template (value) PDU_NAS_EPS @@ -354,7 +384,9 @@ tr_PDU_NAS_EPS_TrackingAreaUpdateReject(template (present) EMM_CauseV cause := ? /* 8.2.29 Tracking Area Update Request */ template (value) PDU_NAS_EPS -ts_PDU_NAS_EPS_TrackingAreaUpdateRequest(EPS_MobileIdentityLV old_guti) := { +ts_PDU_NAS_EPS_TrackingAreaUpdateRequest(template (value) EPS_MobileIdentityLV old_guti, + template (omit) P_TMSISignatureTV old_ptmsi_sig := omit, + template (omit) GUTI_TypeTV old_guti_type := omit) := { protocolDiscriminator := c_EPS_NAS_PD_EMM, ePS_messages := { ePS_MobilityManagement := { @@ -366,7 +398,7 @@ ts_PDU_NAS_EPS_TrackingAreaUpdateRequest(EPS_MobileIdentityLV old_guti) := { oldGUTI := old_guti, nonCurrentNative_nasKeySetId := omit, gprsCipheringKeySequenceNumber := omit, - old_P_TMSISignature := omit, + old_P_TMSISignature := old_ptmsi_sig, additionalGUTI := omit, nonce := omit, uENetworkCapability := omit, @@ -382,7 +414,7 @@ ts_PDU_NAS_EPS_TrackingAreaUpdateRequest(EPS_MobileIdentityLV old_guti) := { supportedCodecList := omit, additionalUpdateType := omit, voiceDomainPrefandUEsettings := omit, - oldGUTI_Type := omit, + oldGUTI_Type := old_guti_type, deviceProperties := omit, mS_NetworkFeatureSupport := omit, tMSIBasedNRIContainer := omit, |