diff --git a/sip/SIP_Tests.ttcn b/sip/SIP_Tests.ttcn
index 935eed3..67e7818 100644
--- a/sip/SIP_Tests.ttcn
+++ b/sip/SIP_Tests.ttcn
@@ -410,7 +410,7 @@
 
 /* Successful MT Call, which is subsequently released by SIP side */
 private function f_TC_mt_success_rel_sip(charstring id) runs on ConnHdlr {
-	var CallPars cp := valueof(t_CallPars(false));
+	var CallPars cp := g_pars.g_cp;
 	f_CallPars_compute(cp);
 	cp.comp.sip_body := "v=0\r\no=Osmocom 0 0 IN IP4 1.1.1.1\r\ns=GSM Call\r\nc=IN " &
 			    f_mgcp_addr2addrtype(cp.sip_rtp_addr) & " " & cp.sip_rtp_addr &
@@ -429,6 +429,7 @@
 	var ConnHdlr vc_conn;
 	f_init();
 	pars := valueof(t_Pars);
+	pars.g_cp := valueof(t_CallPars(false));
 	vc_conn := f_start_handler(refers(f_TC_mt_success_rel_sip), pars);
 	vc_conn.done;
 }
@@ -473,7 +474,7 @@
 
 /* Successful MO Call, which is subsequently released by SIP side */
 private function f_TC_mo_success_rel_sip(charstring id) runs on ConnHdlr {
-	var CallPars cp := valueof(t_CallPars(true));
+	var CallPars cp := g_pars.g_cp;
 	f_CallPars_compute(cp);
 	cp.comp.sip_body := "v=0\r\no=Osmocom 0 0 IN IP4 1.1.1.1\r\ns=GSM Call\r\nc=IN " &
 			    f_mgcp_addr2addrtype(cp.sip_rtp_addr) & " " & cp.sip_rtp_addr &
@@ -492,13 +493,14 @@
 	var ConnHdlr vc_conn;
 	f_init();
 	pars := valueof(t_Pars);
+	pars.g_cp := valueof(t_CallPars(is_mo := true));
 	vc_conn := f_start_handler(refers(f_TC_mo_success_rel_sip), pars);
 	vc_conn.done;
 }
 
 /* SETUP followed by DISC results in lingering B-leg (OS#3518)*/
 private function f_TC_mo_setup_disc_late_rtp(charstring id) runs on ConnHdlr {
-	var CallPars cp := valueof(t_CallPars(true));
+	var CallPars cp := g_pars.g_cp;
 	f_CallPars_compute(cp);
 	cp.comp.sip_body := "v=0\r\no=Osmocom 0 0 IN IP4 1.1.1.1\r\ns=GSM Call\r\nc=IN " &
 			    f_mgcp_addr2addrtype(cp.sip_rtp_addr) & " " & cp.sip_rtp_addr &
@@ -546,6 +548,7 @@
 	var ConnHdlr vc_conn;
 	f_init();
 	pars := valueof(t_Pars);
+	pars.g_cp := valueof(t_CallPars(is_mo := true));
 	vc_conn := f_start_handler(refers(f_TC_mo_setup_disc_late_rtp), pars);
 	vc_conn.done;
 }
