pespin has uploaded this change for review. (
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/41746?usp=email )
Change subject: library/NGAP_Templates: PDUSessionResourceSetupRequest: Allow
matching optional IEs
......................................................................
library/NGAP_Templates: PDUSessionResourceSetupRequest: Allow matching optional
IEs
Change-Id: I7a61b4d7a70994e35f2fa5cbadc90f1088b32e64
---
M library/ngap/NGAP_Templates.ttcn
1 file changed, 79 insertions(+), 28 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks
refs/changes/46/41746/1
diff --git a/library/ngap/NGAP_Templates.ttcn b/library/ngap/NGAP_Templates.ttcn
index 1910120..27a9e33 100644
--- a/library/ngap/NGAP_Templates.ttcn
+++ b/library/ngap/NGAP_Templates.ttcn
@@ -145,35 +145,86 @@
/**
* @see ETSI TS 138 413 V16.12.0 (2023-05) Clause
9.2.1.1 PDU SESSION RESOURCE SETUP REQUEST
*/
- template (present) InitiatingMessage
mw_n2_PDUSessionResourceSetupRequest(
-
template (present) AMF_UE_NGAP_ID p_amfUeNgapID := ?,
-
template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?,
-
template (present) PDUSessionResourceSetupListSUReq
p_pDUSessionResourceSetupListSUReq := ?
-
) := {
- procedureCode := id_PDUSessionResourceSetup,
- criticality := reject,
- value_ := {
- PDUSessionResourceSetupRequest
:= {
- protocolIEs := {
- {
- id :=
id_AMF_UE_NGAP_ID,
-
criticality := reject,
- value_
:= { AMF_UE_NGAP_ID := p_amfUeNgapID }
- },
- {
- id :=
id_RAN_UE_NGAP_ID,
-
criticality := reject,
- value_
:= { RAN_UE_NGAP_ID := p_ranUeNgapID }
- },
- {
- id :=
id_PDUSessionResourceSetupListSUReq,
-
criticality := reject,
- value_
:= { PDUSessionResourceSetupListSUReq := p_pDUSessionResourceSetupListSUReq }
- }
- }
- }
+ function
f_mw_n2_PDUSessionResourceSetupRequest(template (present) AMF_UE_NGAP_ID
p_amfUeNgapID := ?,
+
template (present) RAN_UE_NGAP_ID p_ranUeNgapID := ?,
+
template RANPagingPriority p_rANPagingPriority := omit,
+
template NAS_PDU p_nAS_PDU := omit,
+
template (present) PDUSessionResourceSetupListSUReq
p_pDUSessionResourceSetupListSUReq := ?,
+
template UEAggregateMaximumBitRate p_uEAggregateMaximumBitRate := omit,
+
template UESliceMaximumBitRateList p_uESliceMaximumBitRateList := omit
+ )
return template (present) InitiatingMessage {
+
+ var template (present) InitiatingMessage pdu := {
+ procedureCode := id_PDUSessionResourceSetup,
+ criticality := reject,
+ value_ := {
+ PDUSessionResourceSetupRequest := {
+ protocolIEs := {
+ {
+ id := id_AMF_UE_NGAP_ID,
+ criticality := reject,
+ value_ := { AMF_UE_NGAP_ID :=
p_amfUeNgapID }
+ },
+ {
+ id := id_RAN_UE_NGAP_ID,
+ criticality := reject,
+ value_ := { RAN_UE_NGAP_ID :=
p_ranUeNgapID }
}
- } // End of template
mw_n2_PDUSessionResourceSetupRequest
+ }
+ }
+ }
+ };
+ var integer idx :=
lengthof(pdu.value_.PDUSessionResourceSetupRequest.protocolIEs);
+
+ /* RAN Paging Priority */
+ if (not istemplatekind(p_rANPagingPriority,
"omit")) {
+
pdu.value_.PDUSessionResourceSetupRequest.protocolIEs[idx] := {
+ id := id_RANPagingPriority,
+ criticality := ignore,
+ value_ := { RANPagingPriority :=
p_rANPagingPriority }
+ };
+ idx := idx + 1;
+ }
+
+ /* NAS-PDU */
+ if (not istemplatekind(p_nAS_PDU, "omit")) {
+
pdu.value_.PDUSessionResourceSetupRequest.protocolIEs[idx] := {
+ id := id_NAS_PDU,
+ criticality := reject,
+ value_ := { NAS_PDU := p_nAS_PDU }
+ };
+ idx := idx + 1;
+ }
+
+ /* PDU Session Resource Setup Request List */
+
pdu.value_.PDUSessionResourceSetupRequest.protocolIEs[idx] := {
+ id := id_PDUSessionResourceSetupListSUReq,
+ criticality := reject,
+ value_ := { PDUSessionResourceSetupListSUReq
:= p_pDUSessionResourceSetupListSUReq }
+ };
+ idx := idx + 1;
+
+ /* UE Aggregate Maximum Bit Rate */
+ if (not
istemplatekind(p_uEAggregateMaximumBitRate, "omit")) {
+
pdu.value_.PDUSessionResourceSetupRequest.protocolIEs[idx] := {
+ id := id_UEAggregateMaximumBitRate,
+ criticality := ignore,
+ value_ := { UEAggregateMaximumBitRate :=
p_uEAggregateMaximumBitRate }
+ };
+ idx := idx + 1;
+ }
+
+ /* UE Slice Maximum Bit Rate List */
+ if (not
istemplatekind(p_uESliceMaximumBitRateList, "omit")) {
+
pdu.value_.PDUSessionResourceSetupRequest.protocolIEs[idx] := {
+ id := id_UESliceMaximumBitRateList,
+ criticality := ignore,
+ value_ := { UESliceMaximumBitRateList :=
p_uESliceMaximumBitRateList }
+ };
+ idx := idx + 1;
+ }
+ return pdu;
+ } // End of function
f_mw_n2_PDUSessionResourceSetupRequest
} // End of group Receive
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/41746?usp=email
To unsubscribe, or for help writing mail filters, visit
https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newchange
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: I7a61b4d7a70994e35f2fa5cbadc90f1088b32e64
Gerrit-Change-Number: 41746
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <[email protected]>