laforge submitted this change.

View Change

Approvals: laforge: Looks good to me, but someone else must approve Jenkins Builder: Verified pespin: Looks good to me, approved
library/s1ap: add E-RAB RELEASE templates

Change-Id: I2e9305da80934ea68e3eca8215a9c16de48b37fd
---
M library/s1ap/S1AP_Templates.ttcn
1 file changed, 236 insertions(+), 0 deletions(-)

diff --git a/library/s1ap/S1AP_Templates.ttcn b/library/s1ap/S1AP_Templates.ttcn
index 60dd063..4f0b5ee 100644
--- a/library/s1ap/S1AP_Templates.ttcn
+++ b/library/s1ap/S1AP_Templates.ttcn
@@ -1200,4 +1200,240 @@
}
}

+/* 9.1.3.5 E-RAB RELEASE COMMAND */
+template (value) S1AP_PDU
+ts_S1AP_RABReleaseCmd(template (value) MME_UE_S1AP_ID mme_id,
+ template (value) ENB_UE_S1AP_ID enb_id,
+ template (value) E_RABList rab_items) := {
+ initiatingMessage := {
+ procedureCode := S1AP_Constants.id_E_RABRelease,
+ criticality := reject,
+ value_ := {
+ e_RABReleaseCommand := {
+ protocolIEs := {
+ {
+ id := S1AP_Constants.id_MME_UE_S1AP_ID,
+ criticality := reject,
+ value_ := { MME_UE_S1AP_ID := mme_id }
+ }, {
+ id := S1AP_Constants.id_eNB_UE_S1AP_ID,
+ criticality := reject,
+ value_ := { ENB_UE_S1AP_ID := enb_id }
+ }, {
+ id := S1AP_Constants.id_E_RABToBeReleasedList,
+ criticality := ignore,
+ value_ := { e_RABList := rab_items }
+ }
+ }
+ }
+ }
+ }
+}
+template (present) S1AP_PDU
+tr_S1AP_RABReleaseCmd(template (present) MME_UE_S1AP_ID mme_id := ?,
+ template (present) ENB_UE_S1AP_ID enb_id := ?,
+ template (present) E_RABList rab_items := ?) := {
+ initiatingMessage := {
+ procedureCode := S1AP_Constants.id_E_RABRelease,
+ criticality := reject,
+ value_ := {
+ e_RABReleaseCommand := {
+ protocolIEs := {
+ {
+ id := S1AP_Constants.id_MME_UE_S1AP_ID,
+ criticality := reject,
+ value_ := { MME_UE_S1AP_ID := mme_id }
+ }, {
+ id := S1AP_Constants.id_eNB_UE_S1AP_ID,
+ criticality := reject,
+ value_ := { ENB_UE_S1AP_ID := enb_id }
+ }, {
+ id := S1AP_Constants.id_E_RABToBeReleasedList,
+ criticality := ignore,
+ value_ := { e_RABList := rab_items }
+ }
+ }
+ }
+ }
+ }
+}
+
+/* 9.1.3.6 E-RAB RELEASE RESPONSE */
+template (value) S1AP_PDU
+ts_S1AP_RABReleaseRsp(template (value) MME_UE_S1AP_ID mme_id,
+ template (value) ENB_UE_S1AP_ID enb_id,
+ template (value) E_RABReleaseListBearerRelComp rab_items) := {
+ successfulOutcome := {
+ procedureCode := S1AP_Constants.id_E_RABRelease,
+ criticality := reject,
+ value_ := {
+ e_RABReleaseResponse := {
+ protocolIEs := {
+ {
+ id := S1AP_Constants.id_MME_UE_S1AP_ID,
+ criticality := reject,
+ value_ := { MME_UE_S1AP_ID := mme_id }
+ }, {
+ id := S1AP_Constants.id_eNB_UE_S1AP_ID,
+ criticality := reject,
+ value_ := { ENB_UE_S1AP_ID := enb_id }
+ }, {
+ id := S1AP_Constants.id_E_RABReleaseListBearerRelComp,
+ criticality := ignore,
+ value_ := { e_RABReleaseListBearerRelComp := rab_items }
+ }
+ }
+ }
+ }
+ }
+}
+template (present) S1AP_PDU
+tr_S1AP_RABReleaseRsp(template (present) MME_UE_S1AP_ID mme_id := ?,
+ template (present) ENB_UE_S1AP_ID enb_id := ?,
+ template (present) E_RABReleaseListBearerRelComp rab_items := ?) := {
+ successfulOutcome := {
+ procedureCode := S1AP_Constants.id_E_RABRelease,
+ criticality := reject,
+ value_ := {
+ e_RABReleaseResponse := {
+ protocolIEs := {
+ {
+ id := S1AP_Constants.id_MME_UE_S1AP_ID,
+ criticality := reject,
+ value_ := { MME_UE_S1AP_ID := mme_id }
+ }, {
+ id := S1AP_Constants.id_eNB_UE_S1AP_ID,
+ criticality := reject,
+ value_ := { ENB_UE_S1AP_ID := enb_id }
+ }, {
+ id := S1AP_Constants.id_E_RABReleaseListBearerRelComp,
+ criticality := ignore,
+ value_ := { e_RABReleaseListBearerRelComp := rab_items }
+ }
+ }
+ }
+ }
+ }
+}
+
+/* 9.1.3.7 E-RAB RELEASE INDICATION */
+template (value) S1AP_PDU
+ts_S1AP_RABReleaseInd(template (value) MME_UE_S1AP_ID mme_id,
+ template (value) ENB_UE_S1AP_ID enb_id,
+ template (value) E_RABList rab_items) := {
+ initiatingMessage := {
+ procedureCode := S1AP_Constants.id_E_RABReleaseIndication,
+ criticality := reject,
+ value_ := {
+ e_RABReleaseCommand := {
+ protocolIEs := {
+ {
+ id := S1AP_Constants.id_MME_UE_S1AP_ID,
+ criticality := reject,
+ value_ := { MME_UE_S1AP_ID := mme_id }
+ }, {
+ id := S1AP_Constants.id_eNB_UE_S1AP_ID,
+ criticality := reject,
+ value_ := { ENB_UE_S1AP_ID := enb_id }
+ }, {
+ id := S1AP_Constants.id_E_RABReleasedList,
+ criticality := ignore,
+ value_ := { E_RABList := rab_items }
+ }
+ }
+ }
+ }
+ }
+}
+template (present) S1AP_PDU
+tr_S1AP_RABReleaseInd(template (present) MME_UE_S1AP_ID mme_id := ?,
+ template (present) ENB_UE_S1AP_ID enb_id := ?,
+ template (present) E_RABList rab_items := ?) := {
+ initiatingMessage := {
+ procedureCode := S1AP_Constants.id_E_RABReleaseIndication,
+ criticality := reject,
+ value_ := {
+ e_RABReleaseCommand := {
+ protocolIEs := {
+ {
+ id := S1AP_Constants.id_MME_UE_S1AP_ID,
+ criticality := reject,
+ value_ := { MME_UE_S1AP_ID := mme_id }
+ }, {
+ id := S1AP_Constants.id_eNB_UE_S1AP_ID,
+ criticality := reject,
+ value_ := { ENB_UE_S1AP_ID := enb_id }
+ }, {
+ id := S1AP_Constants.id_E_RABReleasedList,
+ criticality := ignore,
+ value_ := { E_RABList := rab_items }
+ }
+ }
+ }
+ }
+ }
+}
+
+/* 9.2.1.36 E-RAB List */
+template (value) E_RABList
+ts_E_RABList(template (value) E_RABItem it) := {
+ {
+ id := S1AP_Constants.id_E_RABItem,
+ criticality := ignore,
+ value_ := { E_RABItem := it }
+ }
+}
+template (present) E_RABList
+tr_E_RABList(template (present) E_RABItem it := ?) := {
+ {
+ id := S1AP_Constants.id_E_RABItem,
+ criticality := ignore,
+ value_ := { E_RABItem := it }
+ }
+}
+
+template (value) E_RABItem
+ts_E_RABItem(template (value) E_RAB_ID rab_id,
+ template (value) Cause cause := {nas := normal_release}) := {
+ e_RAB_ID := rab_id,
+ cause := cause,
+ iE_Extensions := omit
+}
+template (present) E_RABItem
+tr_E_RABItem(template (present) E_RAB_ID rab_id := ?,
+ template (present) Cause cause := ?) := {
+ e_RAB_ID := rab_id,
+ cause := cause,
+ iE_Extensions := *
+}
+
+/* E-RAB Release List */
+template (value) E_RABReleaseListBearerRelComp
+ts_E_RABReleaseListBearerRelComp(template (value) E_RABReleaseItemBearerRelComp it) := {
+ {
+ id := S1AP_Constants.id_E_RABReleaseListBearerRelComp,
+ criticality := ignore,
+ value_ := { E_RABReleaseItemBearerRelComp := it }
+ }
+}
+template (present) E_RABReleaseListBearerRelComp
+tr_E_RABReleaseListBearerRelComp(template (present) E_RABReleaseItemBearerRelComp it := ?) := {
+ {
+ id := S1AP_Constants.id_E_RABReleaseListBearerRelComp,
+ criticality := ignore,
+ value_ := { E_RABReleaseItemBearerRelComp := it }
+ }
+}
+
+template (value) E_RABReleaseItemBearerRelComp
+ts_E_RABReleaseItemBearerRelComp(template (value) E_RAB_ID rab_id) := {
+ e_RAB_ID := rab_id,
+ iE_Extensions := omit
+}
+template (present) E_RABReleaseItemBearerRelComp
+tr_E_RABReleaseItemBearerRelComp(template (present) E_RAB_ID rab_id := ?) := {
+ e_RAB_ID := rab_id,
+ iE_Extensions := *
+}
+
}

To view, visit change 38144. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-MessageType: merged
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: I2e9305da80934ea68e3eca8215a9c16de48b37fd
Gerrit-Change-Number: 38144
Gerrit-PatchSet: 2
Gerrit-Owner: fixeria <vyanitskiy@sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge@osmocom.org>
Gerrit-Reviewer: pespin <pespin@sysmocom.de>