RSL_Types: Channel Mode contains a length byte
diff --git a/library/RSL_Types.ttcn b/library/RSL_Types.ttcn
index 1e3f22d..2771bda 100644
--- a/library/RSL_Types.ttcn
+++ b/library/RSL_Types.ttcn
@@ -283,15 +283,17 @@
 		RSL_CMOD_SP_GSM6	('00001101'B)
 	} with { variant "FIELDLENGTH(8)" };
 	type record RSL_IE_ChannelMode {
+		uint8_t		len,
 		BIT6		reserved,
 		boolean		dtx_d,
 		boolean		dtx_u,
 		RSL_SpeechDataInd spd_ind,
 		RSL_ChanRateType  ch_rate_type,
 		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 := {
+		len := 0,	/* overwritten */
 		reserved := '000000'B,
 		dtx_d := false,
 		dtx_u := false,
@@ -301,6 +303,7 @@
 	}
 
 	template RSL_IE_ChannelMode ts_RSL_ChanMode(RSL_ChanRateType t, RSL_SpeechAlgo alg) := {
+		len := 0,	/* overwritten */
 		reserved := '000000'B,
 		dtx_d := false,
 		dtx_u := false,