diff --git a/bsc/BSC_Tests.ttcn b/bsc/BSC_Tests.ttcn
index 5b7243b..45c3239 100644
--- a/bsc/BSC_Tests.ttcn
+++ b/bsc/BSC_Tests.ttcn
@@ -3743,9 +3743,11 @@
 	f_vty_transceive(BSCVTY, "exit");
 }
 
+const charstring VTY_A5_DEFAULT := "0 1 3";
+
 private function f_vty_encryption_a5_reset() runs on test_CT {
 	/* keep in sync with docker-playground.git ttcn3-bsc-test/osmo-bsc.cfg */
-	f_vty_encryption_a5("0 1 3");
+	f_vty_encryption_a5(VTY_A5_DEFAULT);
 }
 
 /* Establish signalling channel (non-assignment case) followed by cipher mode */
@@ -6087,12 +6089,13 @@
 	f_perform_clear(exp_rr_rel_tmpl := exp_rr_rel_tmpl);
 	setverdict(pass);
 }
-function f_tc_ho_into_this_bsc_main(TestHdlrParams pars) runs on test_CT {
+function f_tc_ho_into_this_bsc_main(TestHdlrParams pars, charstring vty_a5_cfg := VTY_A5_DEFAULT) runs on test_CT {
 	var MSC_ConnHdlr vc_conn;
 
 	f_init(1, true);
 	f_sleep(1.0);
 
+	f_vty_encryption_a5(vty_a5_cfg);
 	f_ctrs_bsc_and_bts_handover_init();
 
 	pars.sccp_addr_msc := g_bssap[0].sccp_addr_own;
@@ -6106,6 +6109,8 @@
 	f_ctrs_bsc_and_bts_add(0, "interbsc_ho_in:attempted");
 	f_ctrs_bsc_and_bts_add(0, "interbsc_ho_in:completed");
 	f_ctrs_bsc_and_bts_verify();
+
+	f_vty_encryption_a5_reset();
 }
 
 testcase TC_ho_into_this_bsc() runs on test_CT {
@@ -6114,10 +6119,10 @@
 	f_shutdown_helper();
 }
 
-function f_tc_ho_into_this_bsc_a5(TestHdlrEncrParams encr) runs on test_CT {
+function f_tc_ho_into_this_bsc_a5(TestHdlrEncrParams encr, charstring vty_a5_cfg := VTY_A5_DEFAULT) runs on test_CT {
 	var TestHdlrParams pars := f_gen_test_hdlr_pars();
 	pars.encr := encr;
-	f_tc_ho_into_this_bsc_main(pars);
+	f_tc_ho_into_this_bsc_main(pars, vty_a5_cfg);
 	f_shutdown_helper();
 }
 
@@ -6134,7 +6139,7 @@
 }
 
 testcase TC_ho_into_this_bsc_a5_4() runs on test_CT {
-	f_tc_ho_into_this_bsc_a5(f_encr_params('10'O, kc128 := true));
+	f_tc_ho_into_this_bsc_a5(f_encr_params('10'O, kc128 := true), "3 4");
 }
 
 /* Report: in inter-BSC incoming handover, when the MSC omits the Chosen Encryption Algorithm IE in the Handover Request
