NAS_Templates: Allow passing old_guti and ptmsi_sig to TAU Req template
Change-Id: I5e0204e772edefc49a63b73fc4aad2fed5c14cac
diff --git a/library/NAS_Templates.ttcn b/library/NAS_Templates.ttcn
index 7652720..4b5758e 100644
--- a/library/NAS_Templates.ttcn
+++ b/library/NAS_Templates.ttcn
@@ -142,13 +142,21 @@
}
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 @@
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 @@
/* 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 @@
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 @@
supportedCodecList := omit,
additionalUpdateType := omit,
voiceDomainPrefandUEsettings := omit,
- oldGUTI_Type := omit,
+ oldGUTI_Type := old_guti_type,
deviceProperties := omit,
mS_NetworkFeatureSupport := omit,
tMSIBasedNRIContainer := omit,