diff --git a/bts/BTS_Tests.ttcn b/bts/BTS_Tests.ttcn
index ecb5497..b68e99b 100644
--- a/bts/BTS_Tests.ttcn
+++ b/bts/BTS_Tests.ttcn
@@ -393,14 +393,15 @@
 	fn.apply(id);
 }
 
-function f_rsl_transceive(template RSL_Message tx, template RSL_Message exp_rx, charstring id,
-			  boolean ignore_other := false)
-runs on ConnHdlr {
+function f_rsl_transceive_ret(template RSL_Message tx, template RSL_Message exp_rx, charstring id,
+				boolean ignore_other := false)
+runs on ConnHdlr return RSL_Message {
+	var RSL_Message rx;
 	timer T := 3.0;
 	RSL.send(tx);
 	T.start;
 	alt {
-	[] RSL.receive(exp_rx) {
+	[] RSL.receive(exp_rx) -> value rx {
 		T.stop;
 		setverdict(pass);
 		}
@@ -413,9 +414,17 @@
 	[not ignore_other] as_l1_dcch();
 	[not ignore_other] RSL.receive {
 		setverdict(fail, "Unexpected RSL message received");
+		self.stop;
 		}
 	[ignore_other] RSL.receive { repeat; }
 	}
+	return rx;
+}
+
+function f_rsl_transceive(template RSL_Message tx, template RSL_Message exp_rx, charstring id,
+			  boolean ignore_other := false)
+runs on ConnHdlr {
+	var RSL_Message rx := f_rsl_transceive_ret(tx, exp_rx, id, ignore_other);
 }
 
 function f_rsl_chan_act(RSL_IE_ChannelMode mode) runs on ConnHdlr {
