bsc: Move hardcoded octetstring to single constant field

This makes it easier changing it to be a valid l3 payload in the future.

Related: SYS#6280
Change-Id: I888bcc42d4b68bac4c12dfbbf3c74e1734318699
diff --git a/bsc/BSC_Tests.ttcn b/bsc/BSC_Tests.ttcn
index 501b3e9..de5b390 100644
--- a/bsc/BSC_Tests.ttcn
+++ b/bsc/BSC_Tests.ttcn
@@ -115,6 +115,8 @@
 private const RSL_IE_Body c_mr_conf_5_90 :=
 	valueof(RSL_IE_Body:{multirate_cfg := ts_RSL_MultirateCfg(true, 0, '00000100'B /* 5,90k */)});
 
+friend const octetstring c_l3_payload := '00010203040506'O;
+
 /* per-BTS state which we keep */
 type record BTS_State {
 	/* component reference to the IPA_Client component used for RSL */
@@ -1521,10 +1523,9 @@
 	/* Send CHAN RQD and wait for allocation; acknowledge it */
 	var RslChannelNr chan_nr := f_chreq_act_ack();
 
-	var octetstring l3 := '00010203040506'O
-	f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), l3));
+	f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), c_l3_payload));
 
-	BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(l3)));
+	BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(c_l3_payload)));
 
 	/* expect BSC to disable the channel again if there's no response from MSC */
 	/* MS waits 20s (T3210) at LU; 10s (T3230) at CM SERV REQ and 5s (T3220) AT detach */
@@ -1542,10 +1543,9 @@
 	/* Send CHAN RQD and wait for allocation; acknowledge it */
 	var RslChannelNr chan_nr := f_chreq_act_ack();
 
-	var octetstring l3 := '00010203040506'O
-	f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), l3));
+	f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), c_l3_payload));
 
-	BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(l3))) -> value rx_c_ind;
+	BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(c_l3_payload))) -> value rx_c_ind;
 	BSSAP.send(ts_BSSAP_DISC_req(rx_c_ind.connectionId, 0));
 
 	/* expect BSC to disable the channel */
@@ -1680,7 +1680,7 @@
 
 	f_init(1);
 
-	dt := f_est_dchan('23'O, 23, '00000000'O);
+	dt := f_est_dchan('23'O, 23, c_l3_payload);
 	if (mp_bssap_cfg[bssap_idx].transport == BSSAP_TRANSPORT_AoIP) {
 		/* send assignment without AoIP IEs */
 		BSSAP.send(ts_BSSAP_DATA_req(dt.sccp_conn_id, ts_BSSMAP_AssignmentReq(ts_BSSMAP_IE_CIC(0, 1))));
@@ -1806,7 +1806,7 @@
 
 	f_init(1);
 
-	dt := f_est_dchan('23'O, 23, '00000000'O);
+	dt := f_est_dchan('23'O, 23, c_l3_payload);
 	/* send assignment without AoIP IEs */
 	BSSAP.send(ts_BSSAP_DATA_req(dt.sccp_conn_id, ass_cmd));
 	alt {
@@ -1946,7 +1946,7 @@
 
 	f_init(1);
 
-	dt := f_est_dchan('23'O, 23, '00010203040506'O);
+	dt := f_est_dchan('23'O, 23, c_l3_payload);
 
 	/* simulate RLL REL IND */
 	f_ipa_tx(ts_RSL_REL_IND(dt.rsl_chan_nr, valueof(ts_RslLinkID_DCCH(0))));
@@ -1974,7 +1974,7 @@
 
 	f_init(1);
 
-	dt := f_est_dchan('23'O, 23, '00010203040506'O);
+	dt := f_est_dchan('23'O, 23, c_l3_payload);
 
 	/* Sending CONN FAIL IND immediately may trigger a race condition.
 	 * Give the BSC some time to process a new SCCP connection (OS#5823). */
@@ -2031,7 +2031,7 @@
 
 	f_init(1);
 
-	dt := f_est_dchan('23'O, 23, '00010203040506'O);
+	dt := f_est_dchan('23'O, 23, c_l3_payload);
 
 	/* BSC<-MSC: Instruct BSC to clear connection */
 	BSSAP.send(ts_BSSAP_DATA_req(dt.sccp_conn_id, ts_BSSMAP_ClearCommand(0)));
@@ -2198,7 +2198,7 @@
 
 	f_init(1);
 
-	dt := f_est_dchan('23'O, 23, '00010203040506'O);
+	dt := f_est_dchan('23'O, 23, c_l3_payload);
 
 	/* Instruct BSC to clear channel */
 	var BssmapCause cause := 0;
@@ -2220,7 +2220,7 @@
 
 	f_init(1);
 
-	dt := f_est_dchan('23'O, 23, '00010203040506'O);
+	dt := f_est_dchan('23'O, 23, c_l3_payload);
 	/* Send CommonID with some random PLMN (BSC doesn't take it into account
 	/* yet when generating the EUTRAN neigh list in RR CHannel Release) */
 	BSSAP.send(ts_BSSAP_DATA_req(dt.sccp_conn_id, ts_BSSMAP_CommonId('001019876543210'H, '323454'O)));
@@ -2276,7 +2276,7 @@
 
 	f_init(1);
 
-	dt := f_est_dchan('23'O, 23, '00010203040506'O);
+	dt := f_est_dchan('23'O, 23, c_l3_payload);
 
 	/* Instruct BSC to clear channel */
 	var BssmapCause cause := 0;
@@ -2298,7 +2298,7 @@
 
 	f_init(1);
 
-	dt := f_est_dchan('23'O, 23, '00010203040506'O);
+	dt := f_est_dchan('23'O, 23, c_l3_payload);
 
 	/* release the SCCP connection */
 	BSSAP.send(ts_BSSAP_DISC_req(dt.sccp_conn_id, 0));
@@ -2313,7 +2313,7 @@
 
 	f_init(1);
 
-	dt := f_est_dchan('23'O, 23, '00010203040506'O);
+	dt := f_est_dchan('23'O, 23, c_l3_payload);
 
 	/* release the SCCP connection */
 	BSSAP.send(ts_BSSAP_DISC_req(dt.sccp_conn_id, 0));
@@ -2328,7 +2328,7 @@
 
 	f_init(1);
 
-	dt := f_est_dchan('23'O, 23, '00010203040506'O);
+	dt := f_est_dchan('23'O, 23, c_l3_payload);
 
 	/* Clear the queue, it might still contain stuff like IMMEDIATE ASSIGN */
 	IPA_RSL[0][0].clear;
@@ -2356,7 +2356,7 @@
 
 	f_init(1);
 
-	dt := f_est_dchan('23'O, 23, '00010203040506'O);
+	dt := f_est_dchan('23'O, 23, c_l3_payload);
 	f_expect_chan_rel(dt.rsl_chan_nr, expect_rll_rel_req := false);
 	f_shutdown_helper();
 }
@@ -2367,7 +2367,7 @@
 {
 	var DchanTuple dt;
 
-	dt := f_est_dchan('23'O, 23, '00010203040506'O);
+	dt := f_est_dchan('23'O, 23, c_l3_payload);
 	var BssmapCause cause := 0;
 	BSSAP.send(ts_BSSAP_DATA_req(dt.sccp_conn_id, ts_BSSMAP_ClearCommand(enum2int(clear_cmd_cause))));
 	BSSAP.receive(tr_BSSAP_DATA_ind(dt.sccp_conn_id, tr_BSSMAP_ClearComplete)) {
@@ -2397,13 +2397,12 @@
 
 	f_init(1);
 
-	var octetstring l3 := '00010203040506'O;
 	var RslChannelNr chan_nr := valueof(t_RslChanNr_Bm(6));
-	f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), l3));
+	f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), c_l3_payload));
 
 	T.start;
 	alt {
-	[] BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(l3))) {
+	[] BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(c_l3_payload))) {
 		setverdict(fail, "MSC received COMPL L3 for non-active lchan");
 		}
 	[] BSSAP.receive {}
@@ -2422,13 +2421,12 @@
 
 	chan_nr := f_chreq_act_ack()
 
-	var octetstring l3 := '00010203040506'O;
-	f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(1)), l3));
+	f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(1)), c_l3_payload));
 
 	timer T := 2.0;
 	T.start;
 	alt {
-	[] BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(l3))) {
+	[] BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(c_l3_payload))) {
 		setverdict(fail, "MSC received COMPL L3 for invalid SAPI 1");
 		}
 	[] BSSAP.receive { repeat; }
@@ -2447,12 +2445,11 @@
 
 	var RslChannelNr chan_nr := f_chreq_act_ack();
 
-	var octetstring l3 := '00010203040506'O;
-	f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(3)), l3));
+	f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(3)), c_l3_payload));
 
 	T.start;
 	alt {
-	[] BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(l3))) {
+	[] BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(c_l3_payload))) {
 		setverdict(fail, "MSC received COMPL L3 for invalid SAPI 3");
 		}
 	[] BSSAP.receive { repeat; }
@@ -2471,12 +2468,11 @@
 
 	var RslChannelNr chan_nr := f_chreq_act_ack();
 
-	var octetstring l3 := '00010203040506'O;
-	f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_SACCH(0)), l3));
+	f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_SACCH(0)), c_l3_payload));
 
 	T.start;
 	alt {
-	[] BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(l3))) {
+	[] BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(c_l3_payload))) {
 		setverdict(fail, "MSC received COMPL L3 for invalid Link SACCH");
 		}
 	[] BSSAP.receive { repeat; }
@@ -2741,7 +2737,7 @@
 		var BSSAP_N_DATA_ind rx_di;
 		var DchanTuple dt;
 
-		dt := f_est_dchan('23'O, 23, '00010203040506'O);
+		dt := f_est_dchan('23'O, 23, c_l3_payload);
 		/* Send CommonID with some random PLMN (BSC doesn't take it into account
 		 * yet when generating the EUTRAN neigh list in RR CHannel Release) */
 		BSSAP.send(ts_BSSAP_DATA_req(dt.sccp_conn_id, ts_BSSMAP_CommonId('001019876543210'H, '323454'O)));
@@ -7555,7 +7551,7 @@
 		/* Setup a BSSAP connection and clear it right away. This is
 		 * the MSC telling the BSC about a planned release, it's not an
 		 * erratic loss of a connection. */
-		dt := f_est_dchan(int2oct(i,1), 23+i, '00010203040506'O);
+		dt := f_est_dchan(int2oct(i,1), 23+i, c_l3_payload);
 
 		/* MSC disconnects (RLSD). */
 		BSSAP.send(ts_BSSAP_DISC_req(dt.sccp_conn_id, 0));
@@ -7599,7 +7595,7 @@
 		/* Setup a BSSAP connection and clear it right away. This is
 		 * the MSC telling the BSC about a planned release, it's not an
 		 * erratic loss of a connection. */
-		dt := f_est_dchan(int2oct(i,1), 23+i, '00010203040506'O);
+		dt := f_est_dchan(int2oct(i,1), 23+i, c_l3_payload);
 
 		/* Instruct BSC to clear channel */
 		BSSAP.send(ts_BSSAP_DATA_req(dt.sccp_conn_id, ts_BSSMAP_ClearCommand(cause)));
@@ -7645,7 +7641,7 @@
 		/* Setup a BSSAP connection and clear it right away. This is
 		 * the MSC telling the BSC about a planned release, it's not an
 		 * erratic loss of a connection. */
-		dt := f_est_dchan('23'O, 23, '00010203040506'O);
+		dt := f_est_dchan('23'O, 23, c_l3_payload);
 
 		/* simulate RLL REL IND */
 		f_ipa_tx(ts_RSL_REL_IND(dt.rsl_chan_nr, valueof(ts_RslLinkID_DCCH(0))));
@@ -7959,7 +7955,7 @@
 	var DchanTuples sdcch_cleanup := {};
 	var integer i;
 	for (i := 0; i < NUM_SDCCH_PER_BTS; i := i + 1) {
-		dt := f_est_dchan('23'O, i, '00010203040506'O);
+		dt := f_est_dchan('23'O, i, c_l3_payload);
 		sdcch_cleanup := sdcch_cleanup & { dt };
 	}
 
@@ -8036,14 +8032,14 @@
 	 */
 	var DchanTuples chan_cleanup := {};
 	for (i := 0; i < NUM_SDCCH_PER_BTS; i := i+1) {
-		chan_cleanup := chan_cleanup & { f_est_dchan('13'O, NUM_SDCCH_PER_BTS + i, '00010203040506'O) };
+		chan_cleanup := chan_cleanup & { f_est_dchan('13'O, NUM_SDCCH_PER_BTS + i, c_l3_payload) };
 	}
 
 	/* Only the dyn TS is still available. Its first lchan gets converted to SDCCH8 */
-	chan_cleanup := chan_cleanup & { f_est_dchan_dyn('33'O, NUM_SDCCH_PER_BTS + i, '00010203040506'O) };
+	chan_cleanup := chan_cleanup & { f_est_dchan_dyn('33'O, NUM_SDCCH_PER_BTS + i, c_l3_payload) };
 	/* Also occupy the seven other SDCCH of the dyn TS */
 	for (i := 0; i < 7; i := i+1) {
-		chan_cleanup := chan_cleanup & { f_est_dchan('33'O, NUM_SDCCH_PER_BTS + i, '00010203040506'O) };
+		chan_cleanup := chan_cleanup & { f_est_dchan('33'O, NUM_SDCCH_PER_BTS + i, c_l3_payload) };
 	}
 
 	/* Clean up SDCCH lchans */
@@ -8097,7 +8093,7 @@
 	var DchanTuples chan_cleanup := {};
 	var OCT1 ra := '43'O; /* RA containing reason=originating speech call*/
 	for (i := 0; i < NUM_SDCCH_PER_BTS; i := i + 1) {
-		dt := f_est_dchan(ra, i, '00010203040506'O);
+		dt := f_est_dchan(ra, i, c_l3_payload);
 		chan_cleanup := chan_cleanup & { dt };
 	}
 
@@ -8175,7 +8171,7 @@
 	var DchanTuples chan_cleanup := {};
 	var integer i;
 	for (i := 0; i < NUM_SDCCH_PER_BTS; i := i + 1) {
-		dt := f_est_dchan('23'O, i, '00010203040506'O);
+		dt := f_est_dchan('23'O, i, c_l3_payload);
 		chan_cleanup := chan_cleanup & { dt };
 	}
 
@@ -9234,12 +9230,11 @@
 
 	/* Send EST IND for the first TCH, so we get to test the RR release cause */
 	var RslChannelNr first_tch := valueof(t_RslChanNr_Bm(1));
-	var octetstring l3 := '00010203040506'O;
-	f_ipa_tx(ts_RSL_EST_IND(first_tch, valueof(ts_RslLinkID_DCCH(0)), l3));
+	f_ipa_tx(ts_RSL_EST_IND(first_tch, valueof(ts_RslLinkID_DCCH(0)), c_l3_payload));
 
 	/* Accept BSSAP conn, so we get to test the Clear Request cause */
 	var BSSAP_N_CONNECT_ind rx_c_ind;
-	BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(l3))) -> value rx_c_ind;
+	BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(c_l3_payload))) -> value rx_c_ind;
 	var integer sccp_conn_id := rx_c_ind.connectionId;
 	BSSAP.send(ts_BSSAP_CONNECT_res(rx_c_ind.connectionId));
 
@@ -11063,11 +11058,10 @@
 			 chan_ident_ie.chan_ident.ch_desc.v.tsc);
 
 	/* Check that the lchan is working */
-	var octetstring l3 := '00010203040506'O;
-	f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), l3));
+	f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), c_l3_payload));
 
 	var BSSAP_N_CONNECT_ind rx_c_ind;
-	BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(l3))) -> value rx_c_ind;
+	BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(c_l3_payload))) -> value rx_c_ind;
 	dt.sccp_conn_id := rx_c_ind.connectionId;
 	BSSAP.send(ts_BSSAP_CONNECT_res(rx_c_ind.connectionId));
 
@@ -11111,11 +11105,10 @@
 	f_ipa_tx(ts_RSL_CHAN_ACT_ACK(chan_nr, fn+10));
 
 	/* Check that the lchan is working */
-	var octetstring l3 := '00010203040506'O;
-	f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), l3));
+	f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), c_l3_payload));
 
 	var BSSAP_N_CONNECT_ind rx_c_ind;
-	BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(l3))) -> value rx_c_ind;
+	BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(c_l3_payload))) -> value rx_c_ind;
 	dt.sccp_conn_id := rx_c_ind.connectionId;
 	BSSAP.send(ts_BSSAP_CONNECT_res(rx_c_ind.connectionId));
 
@@ -11159,11 +11152,10 @@
 	f_ipa_tx(ts_RSL_CHAN_ACT_ACK(chan_nr, fn+10));
 
 	/* Check that the lchan is working */
-	var octetstring l3 := '00010203040506'O;
-	f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), l3));
+	f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), c_l3_payload));
 
 	var BSSAP_N_CONNECT_ind rx_c_ind;
-	BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(l3))) -> value rx_c_ind;
+	BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(c_l3_payload))) -> value rx_c_ind;
 	dt.sccp_conn_id := rx_c_ind.connectionId;
 	BSSAP.send(ts_BSSAP_CONNECT_res(rx_c_ind.connectionId));
 
@@ -11228,11 +11220,10 @@
 	f_ipa_tx(ts_RSL_CHAN_ACT_ACK(chan_nr, fn+10));
 
 	/* Check that the lchan is working */
-	var octetstring l3 := '00010203040506'O;
-	f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), l3));
+	f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), c_l3_payload));
 
 	var BSSAP_N_CONNECT_ind rx_c_ind;
-	BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(l3))) -> value rx_c_ind;
+	BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(c_l3_payload))) -> value rx_c_ind;
 	dt.sccp_conn_id := rx_c_ind.connectionId;
 	BSSAP.send(ts_BSSAP_CONNECT_res(rx_c_ind.connectionId));
 
@@ -11301,11 +11292,10 @@
 			 chan_ident_ie.chan_ident.ch_desc.v.tsc);
 
 	/* Check that the lchan is working */
-	var octetstring l3 := '00010203040506'O;
-	f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), l3));
+	f_ipa_tx(ts_RSL_EST_IND(chan_nr, valueof(ts_RslLinkID_DCCH(0)), c_l3_payload));
 
 	var BSSAP_N_CONNECT_ind rx_c_ind;
-	BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(l3))) -> value rx_c_ind;
+	BSSAP.receive(tr_BSSAP_CONNECT_ind(?, ?, tr_BSSMAP_ComplL3(c_l3_payload))) -> value rx_c_ind;
 	dt.sccp_conn_id := rx_c_ind.connectionId;
 	BSSAP.send(ts_BSSAP_CONNECT_res(rx_c_ind.connectionId));
 
@@ -11581,7 +11571,7 @@
 	 */
 	var DchanTuples chan_cleanup := {};
 	for (i := 0; i < NUM_SDCCH_PER_BTS; i := i+1) {
-		chan_cleanup := chan_cleanup & { f_est_dchan('13'O, NUM_SDCCH_PER_BTS + i, '00010203040506'O) };
+		chan_cleanup := chan_cleanup & { f_est_dchan('13'O, NUM_SDCCH_PER_BTS + i, c_l3_payload) };
 	}
 
 	/* Since only bts 0 is connected, expecting all_allocated to become true for both bts 0 and the "global" bsc
@@ -11591,7 +11581,7 @@
 
 	/* Also fill up all remaining (TCH) channels */
 	for (i := 0; i < NUM_TCHF_PER_BTS + NUM_TCHH_PER_BTS; i := i+1) {
-		chan_cleanup := chan_cleanup & { f_est_dchan('33'O, NUM_SDCCH_PER_BTS + i, '00010203040506'O) };
+		chan_cleanup := chan_cleanup & { f_est_dchan('33'O, NUM_SDCCH_PER_BTS + i, c_l3_payload) };
 	}
 
 	/* All TCH are now also occupied */
@@ -11631,7 +11621,7 @@
 	 */
 	var DchanTuples chan_cleanup := {};
 	for (i := 0; i < NUM_SDCCH_PER_BTS; i := i+1) {
-		chan_cleanup := chan_cleanup & { f_est_dchan('13'O, NUM_SDCCH_PER_BTS + i, '00010203040506'O) };
+		chan_cleanup := chan_cleanup & { f_est_dchan('13'O, NUM_SDCCH_PER_BTS + i, c_l3_payload) };
 	}
 
 	/* The static SDCCH should now be occupied, while still 3x8 dynamic SDCCH potentially remain. So only
@@ -11641,11 +11631,11 @@
 	/* Request more SDCCH, hence convert the first dyn TS to SDCCH8.
 	 * Will release them later, so remember all the DchanTuples. */
 	var DchanTuples dyn_sddch := {};
-	dyn_sddch := dyn_sddch & { f_est_dchan_dyn('33'O, NUM_SDCCH_PER_BTS + i, '00010203040506'O) };
+	dyn_sddch := dyn_sddch & { f_est_dchan_dyn('33'O, NUM_SDCCH_PER_BTS + i, c_l3_payload) };
 
 	/* Also occupy the seven other SDCCH of the dyn TS */
 	for (i := 0; i < 7; i := i+1) {
-		dyn_sddch := dyn_sddch & { f_est_dchan('33'O, NUM_SDCCH_PER_BTS + i, '00010203040506'O) };
+		dyn_sddch := dyn_sddch & { f_est_dchan('33'O, NUM_SDCCH_PER_BTS + i, c_l3_payload) };
 	}
 
 	/* Now all dynamic SDCCH are also occupied, so for the first time all_allocated:sdcch will trigger... */
@@ -11653,7 +11643,7 @@
 
 	/* occupy the remaining TCH, three TCH/F and two TCH/H lchans */
 	for (i := 0; i < 5; i := i+1) {
-		chan_cleanup := chan_cleanup & { f_est_dchan('33'O, NUM_SDCCH_PER_BTS + i, '00010203040506'O) };
+		chan_cleanup := chan_cleanup & { f_est_dchan('33'O, NUM_SDCCH_PER_BTS + i, c_l3_payload) };
 	}
 
 	/* All TCH lchans are now also occupied, both static and dynamic */
@@ -11727,7 +11717,7 @@
 
 	/* Expect the BSC to allocate 4 x TCH/F channels on BTS2/TRX0 */
 	for (var integer i := 0; i < 4; i := i + 1) {
-		var DchanTuple dt := f_est_dchan('23'O, 23, '00000000'O, {2, 0});
+		var DchanTuple dt := f_est_dchan('23'O, 23, c_l3_payload, {2, 0});
 		f_TC_chan_alloc_algo(dt, {2, 0});
 		f_perform_clear_test_ct(dt);
 	}
@@ -11750,7 +11740,7 @@
 
 	/* Expect the BSC to allocate 5 x TCH/F channels on BTS2/TRX3 */
 	for (var integer i := 0; i < 5; i := i + 1) {
-		var DchanTuple dt := f_est_dchan('23'O, 23, '00000000'O, {2, 0});
+		var DchanTuple dt := f_est_dchan('23'O, 23, c_l3_payload, {2, 0});
 		f_TC_chan_alloc_algo(dt, {2, 3});
 		f_perform_clear_test_ct(dt);
 	}
@@ -11779,12 +11769,12 @@
 	var DchanTuple dt;
 
 	f_logp(BSCVTY, "Case a) Unknown Uplink RxLev, fall-back to ascending");
-	dt := f_est_dchan('23'O, 23, '00000000'O, TRX0);
+	dt := f_est_dchan('23'O, 23, c_l3_payload, TRX0);
 	f_TC_chan_alloc_algo(dt, TRX0);
 	f_perform_clear_test_ct(dt);
 
 	f_logp(BSCVTY, "Case b) Not enough RxLev samples, use ascending");
-	dt := f_est_dchan('23'O, 23, '00000000'O, TRX0);
+	dt := f_est_dchan('23'O, 23, c_l3_payload, TRX0);
 	f_ipa_tx(ts_RSL_MEAS_RES_EMPTY(dt.rsl_chan_nr, 0,
 				       ts_RSL_IE_UplinkMeas(30, 0),
 				       ts_RSL_IE_BS_Power(0)), TRX0);
@@ -11793,7 +11783,7 @@
 	f_perform_clear_test_ct(dt);
 
 	f_logp(BSCVTY, "Case c) Uplink RxLev below the threshold, use ascending");
-	dt := f_est_dchan('23'O, 23, '00000000'O, TRX0);
+	dt := f_est_dchan('23'O, 23, c_l3_payload, TRX0);
 	f_ipa_tx(ts_RSL_MEAS_RES_EMPTY(dt.rsl_chan_nr, 0,
 				       ts_RSL_IE_UplinkMeas(45, 0),
 				       ts_RSL_IE_BS_Power(0)), TRX0);
@@ -11805,7 +11795,7 @@
 	f_perform_clear_test_ct(dt);
 
 	f_logp(BSCVTY, "Case d) Uplink RxLev above the threshold, use descending");
-	dt := f_est_dchan('23'O, 23, '00000000'O, TRX0);
+	dt := f_est_dchan('23'O, 23, c_l3_payload, TRX0);
 	f_ipa_tx(ts_RSL_MEAS_RES_EMPTY(dt.rsl_chan_nr, 0,
 				       ts_RSL_IE_UplinkMeas(50, 0),
 				       ts_RSL_IE_BS_Power(0)), TRX0);
@@ -11821,7 +11811,7 @@
 	f_vty_transceive(BSCVTY, "end");
 
 	f_logp(BSCVTY, "Case e) Uplink RxLev above the threshold, but C0 load is not");
-	dt := f_est_dchan('23'O, 23, '00000000'O, TRX0);
+	dt := f_est_dchan('23'O, 23, c_l3_payload, TRX0);
 	f_ipa_tx(ts_RSL_MEAS_RES_EMPTY(dt.rsl_chan_nr, 0,
 				       ts_RSL_IE_UplinkMeas(50, 0),
 				       ts_RSL_IE_BS_Power(0)), TRX0);
diff --git a/bsc/BSC_Tests_CBSP.ttcn b/bsc/BSC_Tests_CBSP.ttcn
index c07b605..ae77ac8 100644
--- a/bsc/BSC_Tests_CBSP.ttcn
+++ b/bsc/BSC_Tests_CBSP.ttcn
@@ -1005,7 +1005,7 @@
 	cell_list := ts_BSSMAP_CIL_CGI({bssmap_cgi(mp_cgi_bts0)});
 
 	/* first establish a dedicated channel */
-	var DchanTuple dt := f_est_dchan('23'O, 23, '00010203040506'O);
+	var DchanTuple dt := f_est_dchan('23'O, 23, c_l3_payload);
 
 	/* then send ETWS PN */
 	f_cbsp_write_emerg(g_cbsp_msg_id, g_cbsp_ser_no, cell_list);
diff --git a/bsc/BSC_Tests_VAMOS.ttcn b/bsc/BSC_Tests_VAMOS.ttcn
index cd9ffd0..3ebcaaa 100644
--- a/bsc/BSC_Tests_VAMOS.ttcn
+++ b/bsc/BSC_Tests_VAMOS.ttcn
@@ -279,13 +279,13 @@
 /* verify that DTAP passes through both ways with the right cbits */
 private function f_verify_dtap() runs on MSC_ConnHdlr
 {
-	var octetstring l3_data := '00010203040506'O;
 	var PDU_BSSAP rx_bssap_dtap;
+	var octetstring l3_data;
 
 	/* MS to NW */
-	RSL.send(ts_RSL_DATA_IND(g_chan_nr, valueof(ts_RslLinkID_DCCH(0)), l3_data));
+	RSL.send(ts_RSL_DATA_IND(g_chan_nr, valueof(ts_RslLinkID_DCCH(0)), c_l3_payload));
 	BSSAP.receive(tr_BSSAP_DTAP) -> value rx_bssap_dtap;
-	if (not match(rx_bssap_dtap.pdu.dtap, l3_data)) {
+	if (not match(rx_bssap_dtap.pdu.dtap, c_l3_payload)) {
 		setverdict(fail, "unexpected L3 data");
 		mtc.stop;
 	}