[MERGED] osmo-ttcn3-hacks[master]: RSL: Introduce template (value) annotations

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.

Harald Welte gerrit-no-reply at lists.osmocom.org
Wed Apr 18 22:31:01 UTC 2018


Harald Welte has submitted this change and it was merged.

Change subject: RSL: Introduce template (value) annotations
......................................................................


RSL: Introduce template (value) annotations

Change-Id: I18828ccbc7d28dd190e745f020c724acdb0cdc8b
---
M library/RSL_Types.ttcn
1 file changed, 189 insertions(+), 109 deletions(-)

Approvals:
  Harald Welte: Looks good to me, approved
  Jenkins Builder: Verified



diff --git a/library/RSL_Types.ttcn b/library/RSL_Types.ttcn
index 104a1a8..246ea3f 100644
--- a/library/RSL_Types.ttcn
+++ b/library/RSL_Types.ttcn
@@ -32,10 +32,15 @@
 		boolean			transparent
 	} with { variant "FIELDORDER(msb)" };
 
-	template RSL_MessageDiscriminator ts_RSL_MsgDisc(RSL_MessageGroup mg, boolean t := true) := {
+	template (value) RSL_MessageDiscriminator ts_RSL_MsgDisc(RSL_MessageGroup mg, boolean t := true) := {
 		msg_group := mg,
 		transparent := t
 	}
+	template RSL_MessageDiscriminator tr_RSL_MsgDisc(template RSL_MessageGroup mg, boolean t := true) := {
+		msg_group := mg,
+		transparent := t
+	}
+
 
 	/* Section 9.2 */
 	type enumerated RSL_MessageType {
@@ -235,7 +240,7 @@
 		octetstring	payload
 	} with { variant (len) "LENGTHTO(payload)" }
 
-	template RSL_LV ts_RSL_LV(template octetstring pl) := {
+	template (value) RSL_LV ts_RSL_LV(template (value) octetstring pl) := {
 		len := 0,
 		payload := pl
 	}
@@ -250,7 +255,7 @@
 		octetstring	payload
 	} with { variant (len) "LENGTHTO(payload)" }
 
-	template RSL_L16V ts_RSL_L16V(template octetstring pl) := {
+	template (value) RSL_L16V ts_RSL_L16V(template (value) octetstring pl) := {
 		len := 0,
 		payload := pl
 	}
@@ -320,7 +325,7 @@
 		RSL_SpeechAlgo	coding_alg_rate
 	} with { variant (len) "LENGTHTO(reserved,dtx_d,dtx_u,spd_ind,ch_rate_type,coding_alg_rate)" }
 
-	template RSL_IE_ChannelMode ts_RSL_ChanMode_SIGN := {
+	template (value) RSL_IE_ChannelMode ts_RSL_ChanMode_SIGN := {
 		len := 0,	/* overwritten */
 		reserved := '000000'B,
 		dtx_d := false,
@@ -330,7 +335,7 @@
 		coding_alg_rate := RSL_CMOD_NO_RESOURCE
 	}
 
-	template RSL_IE_ChannelMode ts_RSL_ChanMode(RSL_ChanRateType t, RSL_SpeechAlgo alg) := {
+	template (value) RSL_IE_ChannelMode ts_RSL_ChanMode(RSL_ChanRateType t, RSL_SpeechAlgo alg) := {
 		len := 0,	/* overwritten */
 		reserved := '000000'B,
 		dtx_d := false,
@@ -370,6 +375,13 @@
 		alg_id := alg,
 		key := key
 	}
+	template (value) RSL_IE_EncryptionInfo ts_RSL_IE_EncrInfo(OCT1 alg, octetstring key) := {
+		len := 0, /* overwritten */
+		alg_id := alg,
+		key := key
+	}
+
+
 
 	/* 9.3.8 */
 	type record RSL_IE_FrameNumber {
@@ -402,7 +414,7 @@
 		uint16_t	access_count
 	} with { variant (len) "LENGTHTO(slot_count,busy_count,access_count)" }
 
-	template RSL_IE_RachLoad ts_RSL_IE_RachLoad(uint16_t slot, uint16_t busy, uint16_t acc) := {
+	template (value) RSL_IE_RachLoad ts_RSL_IE_RachLoad(uint16_t slot, uint16_t busy, uint16_t acc) := {
 		len := 0, /* overwritten */
 		slot_count := slot,
 		busy_count := busy,
@@ -439,7 +451,7 @@
 		}
 	}
 
-	template RSL_IE_RequestRef ts_RSL_IE_ReqRef(OCT1 ra, GsmFrameNumber frame_nr) := {
+	template (value) RSL_IE_RequestRef ts_RSL_IE_ReqRef(OCT1 ra, GsmFrameNumber frame_nr) := {
 		ra := ra,
 		frame_nr := ts_RSL_IE_FrameNumber(frame_nr)
 	}
@@ -518,7 +530,7 @@
 		octetstring	cause_ext optional
 	} with { variant (len) "LENGTHTO(e,cause,cause_ext)" }
 
-	template RSL_IE_Cause ts_RSL_IE_Cause(RSL_Cause cause) := {
+	template (value) RSL_IE_Cause ts_RSL_IE_Cause(RSL_Cause cause) := {
 		len := 0, /* overwritten */
 		e := 0,
 		cause := cause,
@@ -711,7 +723,7 @@
 	/* For some reason the TTCN-3 RAW codec cannot automatically figure out the IEI
 	 * that it needs to set for a given union-choice (body).  So we have to explicitly
 	 * specify the IEI by the caller :( */
-	template RSL_IE t_RSL_IE(RSL_IE_Type iei, template RSL_IE_Body body) := {
+	template (value) RSL_IE t_RSL_IE(RSL_IE_Type iei, template (value) RSL_IE_Body body) := {
 		iei := iei,
 		body := body
 	}
@@ -742,9 +754,9 @@
 		ies := *
 	}
 
-	template RSL_Message ts_RSL_MsgDiscType(template RSL_MessageDiscriminator m_disc,
-						template RSL_MessageType msg_type,
-						template RSL_IE_List ies := omit) := {
+	template (value) RSL_Message ts_RSL_MsgDiscType(template (value) RSL_MessageDiscriminator m_disc,
+							template (value) RSL_MessageType msg_type,
+							template (omit) RSL_IE_List ies := omit) := {
 		msg_disc := m_disc,
 		msg_type := msg_type,
 		ies := ies
@@ -784,7 +796,9 @@
 
 
 	/* 8.3.1 BSC -> BTS */
-	template RSL_Message ts_RSL_DATA_REQ(RslChannelNr chan_nr, RslLinkId link_id, octetstring l3_info) := {
+	template (value) RSL_Message ts_RSL_DATA_REQ(template (value) RslChannelNr chan_nr,
+						     template (value) RslLinkId link_id,
+						     octetstring l3_info) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_RLL, true),
 		msg_type := RSL_MT_DATA_REQ,
 		ies :={
@@ -797,7 +811,7 @@
 	template RSL_Message tr_RSL_DATA_REQ(template RslChannelNr chan_nr :=?,
 					     template RslLinkId link_id := ?,
 					     template octetstring l3_info := ?) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_RLL, true),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_RLL, true),
 		msg_type := RSL_MT_DATA_REQ,
 		ies :={
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr}),
@@ -808,7 +822,9 @@
 
 
 	/* 8.3.2 BTS -> BSC */
-	template RSL_Message ts_RSL_DATA_IND(RslChannelNr chan_nr, RslLinkId link_id, octetstring l3_info) := {
+	template (value) RSL_Message ts_RSL_DATA_IND(template (value) RslChannelNr chan_nr,
+						     template (value) RslLinkId link_id,
+						     octetstring l3_info) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_RLL, true),
 		msg_type := RSL_MT_DATA_IND,
 		ies :={
@@ -819,7 +835,7 @@
 	}
 	template RSL_Message tr_RSL_DATA_IND(template RslChannelNr chan_nr, template RslLinkId link_id,
 					     template octetstring l3_info := ?) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_RLL, true),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_RLL, true),
 		msg_type := RSL_MT_DATA_IND,
 		ies :={
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr}),
@@ -829,7 +845,8 @@
 	}
 
 	/* 8.3.3 BTS -> BSC */
-	template RSL_Message ts_RSL_ERROR_IND(RslChannelNr chan_nr, RslLinkId link_id, RSL_Cause cause) := {
+	template (value) RSL_Message ts_RSL_ERROR_IND(template (value) RslChannelNr chan_nr,
+						      template (value) RslLinkId link_id, RSL_Cause cause) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_RLL, false),
 		msg_type := RSL_MT_ERROR_IND,
 		ies :={
@@ -840,7 +857,7 @@
 	}
 	template RSL_Message tr_RSL_ERROR_IND(template RslChannelNr chan_nr, template RslLinkId link_id,
 						template RSL_Cause cause := ?) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_RLL, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_RLL, false),
 		msg_type := RSL_MT_ERROR_IND,
 		ies :={
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr}),
@@ -849,8 +866,48 @@
 		}
 	}
 
+	/* 8.3.4 BTS <- BSC */
+	template (value) RSL_Message ts_RSL_EST_REQ(template (value) RslChannelNr chan_nr,
+						    template (value) RslLinkId link_id) := {
+		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_RLL, false),
+		msg_type := RSL_MT_EST_REQ,
+		ies := {
+			t_RSL_IE(RSL_IE_CHAN_NR, RSL_IE_Body:{chan_nr := chan_nr}),
+			t_RSL_IE(RSL_IE_LINK_IDENT, RSL_IE_Body:{link_id := link_id})
+		}
+	}
+	template RSL_Message tr_RSL_EST_REQ(template RslChannelNr chan_nr, template RslLinkId link_id) := {
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_RLL, false),
+		msg_type := RSL_MT_EST_REQ,
+		ies := {
+			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr}),
+			tr_RSL_IE(RSL_IE_Body:{link_id := link_id})
+		}
+	}
+
+	/* 8.3.5 BTS -> BSC */
+	template (value) RSL_Message ts_RSL_EST_CONF(template (value) RslChannelNr chan_nr,
+						     template (value) RslLinkId link_id) := {
+		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_RLL, false),
+		msg_type := RSL_MT_EST_CONF,
+		ies := {
+			t_RSL_IE(RSL_IE_CHAN_NR, RSL_IE_Body:{chan_nr := chan_nr}),
+			t_RSL_IE(RSL_IE_LINK_IDENT, RSL_IE_Body:{link_id := link_id})
+		}
+	}
+	template RSL_Message tr_RSL_EST_CONF(template RslChannelNr chan_nr, template RslLinkId link_id) := {
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_RLL, false),
+		msg_type := RSL_MT_EST_CONF,
+		ies := {
+			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr}),
+			tr_RSL_IE(RSL_IE_Body:{link_id := link_id})
+		}
+	}
+
 	/* 8.3.6 BTS -> BSC */
-	template RSL_Message ts_RSL_EST_IND(RslChannelNr chan_nr, RslLinkId link_id, octetstring l3_info) := {
+	template (value) RSL_Message ts_RSL_EST_IND(template (value) RslChannelNr chan_nr,
+						    template (value) RslLinkId link_id,
+						    octetstring l3_info) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_RLL, false),
 		msg_type := RSL_MT_EST_IND,
 		ies := {
@@ -861,7 +918,7 @@
 	}
 	template RSL_Message tr_RSL_EST_IND(template RslChannelNr chan_nr, template RslLinkId link_id,
 						template octetstring l3_info := ?) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_RLL, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_RLL, false),
 		msg_type := RSL_MT_EST_IND,
 		ies := {
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr}),
@@ -871,7 +928,8 @@
 	}
 
 	/* 8.3.7 BSC -> BTS */
-	template RSL_Message ts_RSL_REL_REQ(RslChannelNr chan_nr, RslLinkId link_id) := {
+	template (value) RSL_Message ts_RSL_REL_REQ(template (value) RslChannelNr chan_nr,
+						    template (value) RslLinkId link_id) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_RLL, false),
 		msg_type := RSL_MT_REL_REQ,
 		ies :={
@@ -881,7 +939,7 @@
 	}
 	template RSL_Message tr_RSL_REL_REQ(template RslChannelNr chan_nr,
 					    template RslLinkId link_id) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_RLL, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_RLL, false),
 		msg_type := RSL_MT_REL_REQ,
 		ies :={
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr}),
@@ -891,7 +949,8 @@
 	}
 
 	/* 8.3.8 BTS -> BSC */
-	template RSL_Message ts_RSL_REL_CONF(RslChannelNr chan_nr, RslLinkId link_id) := {
+	template (value) RSL_Message ts_RSL_REL_CONF(template (value) RslChannelNr chan_nr,
+						     template (value) RslLinkId link_id) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_RLL, false),
 		msg_type := RSL_MT_REL_CONF,
 		ies :={
@@ -900,7 +959,7 @@
 		}
 	}
 	template RSL_Message tr_RSL_REL_CONF(template RslChannelNr chan_nr, template RslLinkId link_id) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_RLL, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_RLL, false),
 		msg_type := RSL_MT_REL_CONF,
 		ies :={
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr}),
@@ -909,7 +968,8 @@
 	}
 
 	/* 8.3.9 BTS -> BSC */
-	template RSL_Message ts_RSL_REL_IND(RslChannelNr chan_nr, RslLinkId link_id) := {
+	template (value) RSL_Message ts_RSL_REL_IND(template (value) RslChannelNr chan_nr,
+						    template (value) RslLinkId link_id) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_RLL, false),
 		msg_type := RSL_MT_REL_IND,
 		ies :={
@@ -918,7 +978,7 @@
 		}
 	}
 	template RSL_Message tr_RSL_REL_IND(template RslChannelNr chan_nr, template RslLinkId link_id) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_RLL, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_RLL, false),
 		msg_type := RSL_MT_REL_IND,
 		ies :={
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr}),
@@ -927,13 +987,17 @@
 	}
 
 	/* 8.3.10 BSC -> BTS */
-	template RSL_Message ts_RSL_UNITDATA_REQ(RslChannelNr chan_nr, RslLinkId link_id, octetstring l3_info)
+	template (value) RSL_Message ts_RSL_UNITDATA_REQ(template (value) RslChannelNr chan_nr,
+							 template (value) RslLinkId link_id,
+							 octetstring l3_info)
 	modifies ts_RSL_DATA_REQ := {
 		msg_type := RSL_MT_UNIT_DATA_REQ
 	}
 
 	/* 8.3.11 BTS -> BSC */
-	template RSL_Message ts_RSL_UNITDATA_IND(RslChannelNr chan_nr, RslLinkId link_id, octetstring l3_info)
+	template (value) RSL_Message ts_RSL_UNITDATA_IND(template (value) RslChannelNr chan_nr,
+							 template (value) RslLinkId link_id,
+							 octetstring l3_info)
 	modifies ts_RSL_DATA_IND := {
 		msg_type := RSL_MT_UNIT_DATA_IND
 	}
@@ -942,7 +1006,8 @@
 	/* DEDICATED CANNEL MANAGEMENT MESSAGES */
 
 	/* 8.4.1 BSC -> BTS */
-	template RSL_Message ts_RSL_CHAN_ACT(RslChannelNr chan_nr, RSL_IE_ChannelMode mode) := {
+	template (value) RSL_Message ts_RSL_CHAN_ACT(template (value) RslChannelNr chan_nr,
+						     template (value) RSL_IE_ChannelMode mode) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
 		msg_type := RSL_MT_CHAN_ACTIV,
 		ies :={
@@ -954,7 +1019,7 @@
 	}
 	template RSL_Message tr_RSL_CHAN_ACT(template RslChannelNr chan_nr,
 					     template RSL_IE_ChannelMode mode) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
 		msg_type := RSL_MT_CHAN_ACTIV,
 		ies :={
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr}),
@@ -966,7 +1031,7 @@
 	}
 	template RSL_Message tr_RSL_CHAN_ACT_PDCH(template RslChannelNr chan_nr,
 						  template RSL_IE_ChannelMode mode) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
 		msg_type := RSL_MT_CHAN_ACTIV,
 		ies :={
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr}),
@@ -978,7 +1043,8 @@
 
 
 	/* 8.4.2 BTS -> BSC */
-	template RSL_Message ts_RSL_CHAN_ACT_ACK(RslChannelNr chan_nr, GsmFrameNumber fn) := {
+	template (value) RSL_Message ts_RSL_CHAN_ACT_ACK(template (value) RslChannelNr chan_nr,
+							 GsmFrameNumber fn) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
 		msg_type := RSL_MT_CHAN_ACTIV_ACK,
 		ies :={
@@ -987,7 +1053,7 @@
 		}
 	}
 	template RSL_Message tr_RSL_CHAN_ACT_ACK(template RslChannelNr chan_nr) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
 		msg_type := RSL_MT_CHAN_ACTIV_ACK,
 		ies := {
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr}),
@@ -996,7 +1062,8 @@
 	}
 
 	/* 8.4.3 BTS -> BSC */
-	template RSL_Message ts_RSL_CHAN_ACT_NACK(RslChannelNr chan_nr, RSL_Cause cause) := {
+	template (value) RSL_Message ts_RSL_CHAN_ACT_NACK(template (value) RslChannelNr chan_nr,
+							  RSL_Cause cause) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
 		msg_type := RSL_MT_CHAN_ACTIV_NACK,
 		ies :={
@@ -1006,7 +1073,7 @@
 	}
 	template RSL_Message tr_RSL_CHAN_ACT_NACK(template RslChannelNr chan_nr,
 						  template RSL_Cause cause := ?) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
 		msg_type := RSL_MT_CHAN_ACTIV_NACK,
 		ies := {
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr}),
@@ -1015,7 +1082,7 @@
 	}
 
 	/* 8.4.4 BTS -> BSC */
-	template RSL_Message ts_RSL_CONN_FAIL_IND(RslChannelNr chan_nr, RSL_Cause cause) := {
+	template (value) RSL_Message ts_RSL_CONN_FAIL_IND(RslChannelNr chan_nr, RSL_Cause cause) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
 		msg_type := RSL_MT_CONN_FAIL,
 		ies :={
@@ -1041,7 +1108,7 @@
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr})
 		}
 	}
-	template RSL_Message ts_RSL_DEACT_SACCH(RslChannelNr chan_nr) := {
+	template (value) RSL_Message ts_RSL_DEACT_SACCH(template (value) RslChannelNr chan_nr) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
 		msg_type := RSL_MT_DEACTIVATE_SACCH,
 		ies := {
@@ -1056,7 +1123,7 @@
 					     template OCT1 alg := ?,
 					     template octetstring key := ?,
 					     template octetstring l3_info := ?) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
 		msg_type := RSL_MT_ENCR_CMD,
 		ies := {
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr}),
@@ -1065,16 +1132,17 @@
 			tr_RSL_IE(RSL_IE_Body:{l3_info := tr_RSL_L16V(l3_info)})
 		}
 	}
-	template RSL_Message ts_RSL_ENCR_CMD(RslChannelNr chan_nr, RslLinkId link_id,
-					     OCT1 alg, octetstring key,
-					     octetstring l3_info) := {
+	template (value) RSL_Message ts_RSL_ENCR_CMD(template (value) RslChannelNr chan_nr,
+						     template (value) RslLinkId link_id,
+						     OCT1 alg, octetstring key,
+						     octetstring l3_info) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
 		msg_type := RSL_MT_ENCR_CMD,
 		ies := {
 			t_RSL_IE(RSL_IE_CHAN_NR, RSL_IE_Body:{chan_nr := chan_nr}),
-			t_RSL_IE(RSL_IE_ENCR_INFO, RSL_IE_Body:{encr_info := tr_RSL_IE_EncrInfo(alg, key)}),
+			t_RSL_IE(RSL_IE_ENCR_INFO, RSL_IE_Body:{encr_info := ts_RSL_IE_EncrInfo(alg, key)}),
 			t_RSL_IE(RSL_IE_LINK_IDENT, RSL_IE_Body:{link_id := link_id}),
-			t_RSL_IE(RSL_IE_L3_INFO, RSL_IE_Body:{l3_info := tr_RSL_L16V(l3_info)})
+			t_RSL_IE(RSL_IE_L3_INFO, RSL_IE_Body:{l3_info := ts_RSL_L16V(l3_info)})
 		}
 	}
 
@@ -1082,7 +1150,7 @@
 					     template uint8_t meas_res_nr := ?,
 					     template RSL_IE_UplinkMeas ul_meas := ?,
 					     template RSL_IE_BS_Power bs_power := ?) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
 		msg_type := RSL_MT_MEAS_RES,
 		ies := {
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr}),
@@ -1101,7 +1169,7 @@
 					     template RSL_IE_L1Info l1_info := ?,
 					     template octetstring l3_info := ?,
 					     template uint8_t ms_to := ?) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
 		msg_type := RSL_MT_MEAS_RES,
 		ies := {
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr}),
@@ -1116,7 +1184,7 @@
 
 
 	/* 8.4.10 BTS -> BSC */
-	template RSL_Message ts_RSL_MODE_MODIFY_ACK(RslChannelNr chan_nr) := {
+	template (value) RSL_Message ts_RSL_MODE_MODIFY_ACK(template (value) RslChannelNr chan_nr) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
 		msg_type := RSL_MT_MODE_MODIFY_ACK,
 		ies := {
@@ -1124,7 +1192,7 @@
 		}
 	}
 	template RSL_Message tr_RSL_MODE_MODIFY_ACK(template RslChannelNr chan_nr) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
 		msg_type := RSL_MT_MODE_MODIFY_ACK,
 		ies := {
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr})
@@ -1132,7 +1200,8 @@
 	}
 
 	/* 8.4.11 BTS -> BSC */
-	template RSL_Message ts_RSL_MODE_MODIFY_NACK(RslChannelNr chan_nr, RSL_Cause cause) := {
+	template (value) RSL_Message ts_RSL_MODE_MODIFY_NACK(template (value) RslChannelNr chan_nr,
+							     RSL_Cause cause) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
 		msg_type := RSL_MT_MODE_MODIFY_NACK,
 		ies := {
@@ -1142,7 +1211,7 @@
 	}
 	template RSL_Message tr_RSL_MODE_MODIFY_NACK(template RslChannelNr chan_nr,
 							template RSL_Cause cause) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
 		msg_type := RSL_MT_MODE_MODIFY_NACK,
 		ies := {
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr}),
@@ -1153,13 +1222,13 @@
 
 	/* 8.4.14: BTS <- BSC */
 	template RSL_Message tr_RSL_RF_CHAN_REL(template RslChannelNr chan_nr) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
 		msg_type := RSL_MT_RF_CHAN_REL,
 		ies := {
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr})
 		}
 	}
-	template RSL_Message ts_RSL_RF_CHAN_REL(RslChannelNr chan_nr) := {
+	template (value) RSL_Message ts_RSL_RF_CHAN_REL(template (value) RslChannelNr chan_nr) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
 		msg_type := RSL_MT_RF_CHAN_REL,
 		ies := {
@@ -1168,22 +1237,23 @@
 	}
 
 	/* 8.4.19 BTS -> BSC */
-	template RSL_Message ts_RSL_RF_CHAN_REL_ACK(RslChannelNr chan_nr) :=
+	template (value) RSL_Message ts_RSL_RF_CHAN_REL_ACK(template (value) RslChannelNr chan_nr) :=
 		ts_RSL_MsgDiscType(ts_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
 				   RSL_MT_RF_CHAN_REL_ACK,
 				   { t_RSL_IE(RSL_IE_CHAN_NR, RSL_IE_Body:{chan_nr := chan_nr}) });
 
 	template RSL_Message tr_RSL_RF_CHAN_REL_ACK(template RslChannelNr chan_nr) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
 		msg_type := RSL_MT_RF_CHAN_REL_ACK,
 		ies := {
-			t_RSL_IE(RSL_IE_CHAN_NR, RSL_IE_Body:{chan_nr := chan_nr})
+			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr})
 		}
 	}
 
 	/* 8.6.20 BTS <- BSC */
-	template RSL_Message ts_RSL_SACCH_INF_MOD(RslChannelNr chan_nr, RSL_IE_SysinfoType si_type,
-						  octetstring l3_info) := {
+	template (value) RSL_Message ts_RSL_SACCH_INF_MOD(template (value) RslChannelNr chan_nr,
+							  RSL_IE_SysinfoType si_type,
+							  octetstring l3_info) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
 		msg_type := RSL_MT_SACCH_INFO_MODIFY,
 		ies := {
@@ -1197,29 +1267,31 @@
 	/* COMMON CHANNEL MANAGEMENT MESSAGES */
 
 	/* 8.5.1 BTS <- BSC */
-	template RSL_Message ts_RSL_BCCH_INFO(RSL_IE_SysinfoType si_type, octetstring full_bcch_info) := {
+	template (value) RSL_Message ts_RSL_BCCH_INFO(RSL_IE_SysinfoType si_type,
+						      octetstring full_bcch_info) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_CCHAN, false),
 		msg_type := RSL_MT_BCCH_INFO,
 		ies := {
-			t_RSL_IE(RSL_IE_CHAN_NR, RSL_IE_Body:{chan_nr := t_RslChanNr_BCCH(0)}),
+			t_RSL_IE(RSL_IE_CHAN_NR, RSL_IE_Body:{chan_nr := ts_RslChanNr_BCCH(0)}),
 			t_RSL_IE(RSL_IE_SYSINFO_TYPE, RSL_IE_Body:{sysinfo_type := si_type}),
 			t_RSL_IE(RSL_IE_FULL_BCCH_INFO, RSL_IE_Body:{other := ts_RSL_LV(full_bcch_info)})
 		}
 	}
 
 	/* 8.5.2 BTS -> BSC */
-	template RSL_Message ts_RSL_RACH_LOAD_IND(uint16_t slot_ct, uint16_t busy_ct, uint16_t acc_ct) := {
+	template (value) RSL_Message ts_RSL_RACH_LOAD_IND(uint16_t slot_ct, uint16_t busy_ct,
+							  uint16_t acc_ct) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_CCHAN, false),
 		msg_type := RSL_MT_CCCH_LOAD_IND,
 		ies := {
-			t_RSL_IE(RSL_IE_CHAN_NR, RSL_IE_Body:{chan_nr := t_RslChanNr_RACH(0)}),
+			t_RSL_IE(RSL_IE_CHAN_NR, RSL_IE_Body:{chan_nr := ts_RslChanNr_RACH(0)}),
 			t_RSL_IE(RSL_IE_RACH_LOAD, RSL_IE_Body:{rach_load := ts_RSL_IE_RachLoad(slot_ct, busy_ct, acc_ct)})
 		}
 	}
 	template RSL_Message tr_RSL_RACH_LOAD_IND(template uint16_t slot_ct := ?,
 						  template uint16_t busy_ct := ?,
 						  template uint16_t acc_ct) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_CCHAN, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_CCHAN, false),
 		msg_type := RSL_MT_CCCH_LOAD_IND,
 		ies := {
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := t_RslChanNr_RACH(0)}),
@@ -1227,16 +1299,16 @@
 		}
 	}
 
-	template RSL_Message ts_RSL_PAGING_LOAD_IND(uint16_t buffer_space) := {
+	template (value) RSL_Message ts_RSL_PAGING_LOAD_IND(uint16_t buffer_space) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_CCHAN, false),
 		msg_type := RSL_MT_CCCH_LOAD_IND,
 		ies := {
-			t_RSL_IE(RSL_IE_CHAN_NR, RSL_IE_Body:{chan_nr := t_RslChanNr_PCH_AGCH(0)}),
+			t_RSL_IE(RSL_IE_CHAN_NR, RSL_IE_Body:{chan_nr := ts_RslChanNr_PCH_AGCH(0)}),
 			t_RSL_IE(RSL_IE_PAGING_LOAD, RSL_IE_Body:{paging_load := buffer_space})
 		}
 	}
 	template RSL_Message tr_RSL_PAGING_LOAD_IND(template uint16_t buffer_space := ?) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_CCHAN, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_CCHAN, false),
 		msg_type := RSL_MT_CCCH_LOAD_IND,
 		ies := {
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := t_RslChanNr_PCH_AGCH(0)}),
@@ -1246,18 +1318,18 @@
 
 
 	/* 8.5.3 BTS -> BSC */
-	template RSL_Message ts_RSL_CHAN_RQD(OCT1 ra, GsmFrameNumber fn, uint8_t acc_del := 0) := {
+	template (value) RSL_Message ts_RSL_CHAN_RQD(OCT1 ra, GsmFrameNumber fn, uint8_t acc_del := 0) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_CCHAN, false),
 		msg_type := RSL_MT_CHAN_RQD,
 		ies := {
-			t_RSL_IE(RSL_IE_CHAN_NR, RSL_IE_Body:{chan_nr := t_RslChanNr_RACH(0)}),
+			t_RSL_IE(RSL_IE_CHAN_NR, RSL_IE_Body:{chan_nr := ts_RslChanNr_RACH(0)}),
 			t_RSL_IE(RSL_IE_REQ_REFERENCE, RSL_IE_Body:{req_ref := ts_RSL_IE_ReqRef(ra, fn)}),
 			t_RSL_IE(RSL_IE_ACCESS_DELAY, RSL_IE_Body:{access_delay := acc_del})
 		}
 	}
 	template RSL_Message tr_RSL_CHAN_RQD(template OCT1 ra, template GsmFrameNumber fn := ?,
 						template uint8_t acc_del := ?) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_CCHAN, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_CCHAN, false),
 		msg_type := RSL_MT_CHAN_RQD,
 		ies := {
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := t_RslChanNr_RACH(0)}),
@@ -1267,7 +1339,8 @@
 	}
 
 	/* 8.5.4 BTS -> BSC */
-	template RSL_Message ts_DELETE_IND(RslChannelNr chan_nr, octetstring imm_ass) := {
+	template (value) RSL_Message ts_DELETE_IND(template (value) RslChannelNr chan_nr,
+						   octetstring imm_ass) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_CCHAN, false),
 		msg_type := RSL_MT_DELETE_IND,
 		ies := {
@@ -1278,7 +1351,7 @@
 
 	/* 8.5.5 BSC -> BTS */
 	template RSL_Message tr_RSL_PAGING_CMD(template octetstring identity, template uint3_t tn := ?) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_CCHAN, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_CCHAN, false),
 		msg_type := RSL_MT_PAGING_CMD,
 		ies := {
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := t_RslChanNr_PCH_AGCH(tn)}),
@@ -1287,11 +1360,11 @@
 			* /* opt: channel needed, eMLPP prio */
 		}
 	}
-	template RSL_Message ts_RSL_PAGING_CMD(octetstring identity, uint8_t pg, uint3_t tn := 0) := {
+	template (value) RSL_Message ts_RSL_PAGING_CMD(octetstring identity, uint8_t pg, uint3_t tn := 0) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_CCHAN, false),
 		msg_type := RSL_MT_PAGING_CMD,
 		ies := {
-			t_RSL_IE(RSL_IE_CHAN_NR, RSL_IE_Body:{chan_nr := t_RslChanNr_PCH_AGCH(tn)}),
+			t_RSL_IE(RSL_IE_CHAN_NR, RSL_IE_Body:{chan_nr := ts_RslChanNr_PCH_AGCH(tn)}),
 			t_RSL_IE(RSL_IE_PAGING_GROUP, RSL_IE_Body:{paging_group := pg}),
 			t_RSL_IE(RSL_IE_MS_IDENTITY, RSL_IE_Body:{ms_identity := ts_RSL_LV(identity)})
 		}
@@ -1299,30 +1372,30 @@
 
 	/* 8.5.6 BSC -> BTS */
 	template RSL_Message tr_RSL_IMM_ASSIGN(template uint3_t tn := ?) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_CCHAN, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_CCHAN, false),
 		msg_type := RSL_MT_IMMEDIATE_ASSIGN_CMD,
 		ies := {
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := t_RslChanNr_PCH_AGCH(tn)}),
 			tr_RSL_IE(RSL_IE_Body:{full_imm_ass_info := ?})
 		}
 	}
-	template RSL_Message ts_RSL_IMM_ASSIGN(octetstring f_ass_inf, uint3_t tn := 0) := {
+	template (value) RSL_Message ts_RSL_IMM_ASSIGN(octetstring f_ass_inf, uint3_t tn := 0) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_CCHAN, false),
 		msg_type := RSL_MT_IMMEDIATE_ASSIGN_CMD,
 		ies := {
-			t_RSL_IE(RSL_IE_CHAN_NR, RSL_IE_Body:{chan_nr := t_RslChanNr_PCH_AGCH(tn)}),
+			t_RSL_IE(RSL_IE_CHAN_NR, RSL_IE_Body:{chan_nr := ts_RslChanNr_PCH_AGCH(tn)}),
 			t_RSL_IE(RSL_IE_FULL_IMM_ASS_INFO, RSL_IE_Body:{full_imm_ass_info := ts_RSL_LV(f_ass_inf)})
 		}
 	}
 
 	template RSL_Message tr_RSL_RF_RES_IND := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_TRX_MGMT, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_TRX_MGMT, false),
 		msg_type := RSL_MT_RF_RES_IND,
 		ies := *
 	}
 
 	/* 8.6.2 BTS <- BSC */
-	template RSL_Message ts_RSL_SACCH_FILL(RSL_IE_SysinfoType si_type, octetstring l3_info) := {
+	template (value) RSL_Message ts_RSL_SACCH_FILL(RSL_IE_SysinfoType si_type, octetstring l3_info) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_TRX_MGMT, false),
 		msg_type := RSL_MT_SACCH_FILL,
 		ies := {
@@ -1332,7 +1405,7 @@
 	}
 
 	/* 8.6.4 BTS -> BSC */
-	template RSL_Message ts_RSL_ERROR_REPORT(RSL_Cause cause) := {
+	template (value) RSL_Message ts_RSL_ERROR_REPORT(RSL_Cause cause) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_TRX_MGMT, false),
 		msg_type := RSL_MT_ERROR_REPORT,
 		ies := {
@@ -1340,7 +1413,7 @@
 		}
 	}
 	template RSL_Message tr_RSL_ERROR_REPORT(template RSL_Cause cause := ?) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_TRX_MGMT, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_TRX_MGMT, false),
 		msg_type := RSL_MT_ERROR_REPORT,
 		ies := {
 			tr_RSL_IE(RSL_IE_Body:{cause := tr_RSL_IE_Cause(cause)}),
@@ -1353,14 +1426,14 @@
 	/* Abis/IP specific messages */
 
 	template RSL_Message tr_RSL_IPA_CRCX(template RslChannelNr chan_nr) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_IPACCESS, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_IPACCESS, false),
 		msg_type := RSL_MT_IPAC_CRCX,
 		ies := {
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr}),
 			*
 		}
 	}
-	template RSL_Message ts_RSL_IPA_CRCX(RslChannelNr chan_nr) := {
+	template (value) RSL_Message ts_RSL_IPA_CRCX(template (value) RslChannelNr chan_nr) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_IPACCESS, false),
 		msg_type := RSL_MT_IPAC_CRCX,
 		ies := {
@@ -1369,9 +1442,9 @@
 	}
 
 
-	template RSL_Message ts_RSL_IPA_CRCX_ACK(RslChannelNr chan_nr,
-						 uint16_t ipa_conn_id, uint32_t local_ip,
-						 uint16_t local_port, uint7_t rtp_pt2) := {
+	template (value) RSL_Message ts_RSL_IPA_CRCX_ACK(template (value) RslChannelNr chan_nr,
+							 uint16_t ipa_conn_id, uint32_t local_ip,
+							 uint16_t local_port, uint7_t rtp_pt2) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_IPACCESS, false),
 		msg_type := RSL_MT_IPAC_CRCX_ACK,
 		ies := {
@@ -1386,7 +1459,7 @@
 						 template uint16_t ipa_conn_id,
 						 template uint32_t local_ip,
 						 template uint16_t local_port) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_IPACCESS, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_IPACCESS, false),
 		msg_type := RSL_MT_IPAC_CRCX_ACK,
 		ies := {
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr}),
@@ -1397,7 +1470,8 @@
 		}
 	}
 
-	template RSL_Message ts_RSL_IPA_CRCX_NACK(RslChannelNr chan_nr, RSL_Cause cause) := {
+	template (value) RSL_Message ts_RSL_IPA_CRCX_NACK(template (value) RslChannelNr chan_nr,
+							  RSL_Cause cause) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_IPACCESS, false),
 		msg_type := RSL_MT_IPAC_CRCX_NACK,
 		ies := {
@@ -1407,7 +1481,7 @@
 	}
 	template RSL_Message tr_RSL_IPA_CRCX_NACK(template RslChannelNr chan_nr,
 						  template RSL_Cause cause := ?) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_IPACCESS, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_IPACCESS, false),
 		msg_type := RSL_MT_IPAC_CRCX_NACK,
 		ies := {
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr}),
@@ -1415,10 +1489,10 @@
 		}
 	}
 
-	template RSL_Message ts_RSL_IPA_MDCX(RslChannelNr chan_nr,
-					     uint16_t ipa_conn_id,
-					     uint32_t remote_ip, uint16_t remote_port,
-					     uint7_t rtp_pt2) := {
+	template (value) RSL_Message ts_RSL_IPA_MDCX(template (value) RslChannelNr chan_nr,
+						     uint16_t ipa_conn_id,
+						     uint32_t remote_ip, uint16_t remote_port,
+						     uint7_t rtp_pt2) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_IPACCESS, false),
 		msg_type := RSL_MT_IPAC_MDCX,
 		ies := {
@@ -1432,7 +1506,7 @@
 	}
 	template RSL_Message tr_RSL_IPA_MDCX(template RslChannelNr chan_nr,
 					     template uint16_t ipa_conn_id) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_IPACCESS, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_IPACCESS, false),
 		msg_type := RSL_MT_IPAC_MDCX,
 		ies := {
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr}),
@@ -1441,9 +1515,10 @@
 		}
 	}
 
-	template RSL_Message ts_RSL_IPA_MDCX_ACK(RslChannelNr chan_nr, template uint16_t ipa_conn_id,
-						 uint32_t local_ip, uint16_t local_port,
-						 uint7_t rtp_pt2) := {
+	template (value) RSL_Message ts_RSL_IPA_MDCX_ACK(template (value) RslChannelNr chan_nr,
+							 uint16_t ipa_conn_id,
+							 uint32_t local_ip, uint16_t local_port,
+							 uint7_t rtp_pt2) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_IPACCESS, false),
 		msg_type := RSL_MT_IPAC_MDCX_ACK,
 		ies := {
@@ -1461,7 +1536,7 @@
 						 template uint32_t local_ip,
 						 template uint16_t local_port,
 						 template uint7_t rtp_pt2) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_IPACCESS, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_IPACCESS, false),
 		msg_type := RSL_MT_IPAC_MDCX_ACK,
 		ies := {
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr}),
@@ -1474,8 +1549,9 @@
 		}
 	}
 
-	template RSL_Message ts_RSL_IPA_MDCX_NACK(RslChannelNr chan_nr, RSL_Cause cause,
-						  template uint16_t ipa_conn_id) := {
+	template (value) RSL_Message ts_RSL_IPA_MDCX_NACK(template (value) RslChannelNr chan_nr,
+							  RSL_Cause cause,
+							  template (value) uint16_t ipa_conn_id) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_IPACCESS, false),
 		msg_type := RSL_MT_IPAC_MDCX_NACK,
 		ies := {
@@ -1488,7 +1564,7 @@
 	template RSL_Message tr_RSL_IPA_MDCX_NACK(template RslChannelNr chan_nr,
 						  template RSL_Cause cause,
 						  template uint16_t ipa_conn_id) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_IPACCESS, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_IPACCESS, false),
 		msg_type := RSL_MT_IPAC_MDCX_NACK,
 		ies := {
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr}),
@@ -1499,8 +1575,10 @@
 	}
 
 
-	template RSL_Message ts_RSL_IPA_DLCX_IND(RslChannelNr chan_nr, uint16_t ipa_conn_id,
-						 RSL_IE_IPA_ConnectionStats stats, RSL_Cause cause) := {
+	template (value) RSL_Message ts_RSL_IPA_DLCX_IND(template (value) RslChannelNr chan_nr,
+							 uint16_t ipa_conn_id,
+							 template (value) RSL_IE_IPA_ConnectionStats stats,
+							 RSL_Cause cause) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_IPACCESS, false),
 		msg_type := RSL_MT_IPAC_DLCX_IND,
 		ies := {
@@ -1511,7 +1589,8 @@
 		}
 	}
 
-	template RSL_Message ts_RSL_IPA_DLCX(RslChannelNr chan_nr, uint16_t ipa_conn_id) := {
+	template (value) RSL_Message ts_RSL_IPA_DLCX(template (value) RslChannelNr chan_nr,
+						     uint16_t ipa_conn_id) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_IPACCESS, false),
 		msg_type := RSL_MT_IPAC_DLCX,
 		ies := {
@@ -1521,7 +1600,7 @@
 	}
 	template RSL_Message tr_RSL_IPA_DLCX(template RslChannelNr chan_nr,
 					     template uint16_t ipa_conn_id := omit) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_IPACCESS, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_IPACCESS, false),
 		msg_type := RSL_MT_IPAC_DLCX,
 		ies := {
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr}),
@@ -1530,8 +1609,9 @@
 		}
 	}
 
-	template RSL_Message ts_RSL_IPA_DLCX_ACK(RslChannelNr chan_nr, template uint16_t ipa_conn_id,
-						 template RSL_IE_IPA_ConnectionStats stats) := {
+	template (value) RSL_Message ts_RSL_IPA_DLCX_ACK(template (value) RslChannelNr chan_nr,
+							 uint16_t ipa_conn_id,
+							 RSL_IE_IPA_ConnectionStats stats) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_IPACCESS, false),
 		msg_type := RSL_MT_IPAC_DLCX_ACK,
 		ies := {
@@ -1543,7 +1623,7 @@
 	template RSL_Message tr_RSL_IPA_DLCX_ACK(template RslChannelNr chan_nr,
 						 template uint16_t ipa_conn_id,
 						 template RSL_IE_IPA_ConnectionStats stats) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_IPACCESS, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_IPACCESS, false),
 		msg_type := RSL_MT_IPAC_DLCX_ACK,
 		ies := {
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr}),
@@ -1554,8 +1634,8 @@
 
 
 
-	template RSL_Message ts_RSL_IPA_DLCX_NACK(RslChannelNr chan_nr, RSL_Cause cause,
-						  template uint16_t ipa_conn_id) := {
+	template (value) RSL_Message ts_RSL_IPA_DLCX_NACK(template (value) RslChannelNr chan_nr,
+							  RSL_Cause cause, uint16_t ipa_conn_id) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_IPACCESS, false),
 		msg_type := RSL_MT_IPAC_DLCX_NACK,
 		ies := {
@@ -1567,7 +1647,7 @@
 	}
 	template RSL_Message tr_RSL_IPA_DLCX_NACK(template RslChannelNr chan_nr,
 						  template RSL_Cause cause) := {
-		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_IPACCESS, false),
+		msg_disc := tr_RSL_MsgDisc(RSL_MDISC_IPACCESS, false),
 		msg_type := RSL_MT_IPAC_DLCX_NACK,
 		ies := {
 			tr_RSL_IE(RSL_IE_Body:{chan_nr := chan_nr}),
@@ -1578,7 +1658,7 @@
 	}
 
 
-	template RSL_Message ts_RSL_IPA_PDCH_ACT(RslChannelNr chan_nr) := {
+	template (value) RSL_Message ts_RSL_IPA_PDCH_ACT(RslChannelNr chan_nr) := {
 		msg_disc := ts_RSL_MsgDisc(RSL_MDISC_DCHAN, false),
 		msg_type := RSL_MT_IPAC_PDCH_ACT,
 		ies := {

-- 
To view, visit https://gerrit.osmocom.org/7873
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I18828ccbc7d28dd190e745f020c724acdb0cdc8b
Gerrit-PatchSet: 1
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Owner: Harald Welte <laforge at gnumonks.org>
Gerrit-Reviewer: Harald Welte <laforge at gnumonks.org>
Gerrit-Reviewer: Jenkins Builder



More information about the gerrit-log mailing list