diff --git a/bsc/BSC_Tests.ttcn b/bsc/BSC_Tests.ttcn
index 81a1901..98cdb45 100644
--- a/bsc/BSC_Tests.ttcn
+++ b/bsc/BSC_Tests.ttcn
@@ -883,12 +883,24 @@
 }
 
 
-friend function f_shutdown_helper() runs on test_CT {
+friend function f_shutdown_helper(boolean ho := false) runs on test_CT {
 	/* Run the subscr and conn leak test only when the VTY is initialized */
 	if (BSCVTY.checkstate("Mapped") and mp_verify_talloc_count) {
 		f_verify_talloc_count(BSCVTY, {"struct bsc_subscr", "struct gsm_subscriber_connection"});
 	}
 
+	/* Reset handover related configuration */
+	if (ho) {
+		f_bts_0_cfg(BSCVTY,
+			    {"no neighbors",
+			     "neighbor-list mode manual-si5",
+			     "neighbor-list add arfcn 100",
+			     "neighbor-list add arfcn 200",
+			     "si5 neighbor-list add arfcn 10",
+			     "si5 neighbor-list add arfcn 20",
+			     "handover algorithm 1"});
+	}
+
 	all component.stop;
 	setverdict(pass);
 	mtc.stop;
@@ -5672,7 +5684,7 @@
 	f_ctrs_bts_add(1, "incoming_intra_bsc_ho:attempted");
 	f_ctrs_bts_add(1, "incoming_intra_bsc_ho:completed");
 	f_ctrs_bsc_and_bts_verify();
-	f_shutdown_helper();
+	f_shutdown_helper(ho := true);
 }
 
 function f_tc_ho_int_a5(OCT1 encr_alg, charstring enc_a5 := "0 1 3") runs on test_CT {
@@ -5701,7 +5713,7 @@
 	f_ctrs_bts_add(1, "incoming_intra_bsc_ho:completed");
 	f_ctrs_bsc_and_bts_verify();
 	f_vty_encryption_a5_reset();
-	f_shutdown_helper();
+	f_shutdown_helper(ho := true);
 }
 
 testcase TC_ho_int_a5_0() runs on test_CT {
@@ -5824,7 +5836,7 @@
 	f_ctrs_bts_add(1, "incoming_intra_bsc_ho:attempted");
 	f_ctrs_bts_add(1, "incoming_intra_bsc_ho:stopped");
 	f_ctrs_bsc_and_bts_verify();
-	f_shutdown_helper();
+	f_shutdown_helper(ho := true);
 }
 
 /* Expecting MGCP to DLCX the endpoint's two connections: towards BTS and towards MSC */
@@ -5958,7 +5970,7 @@
 	f_ctrs_bsc_and_bts_add(0, "interbsc_ho_out:attempted");
 	f_ctrs_bsc_and_bts_add(0, "interbsc_ho_out:completed");
 	f_ctrs_bsc_and_bts_verify();
-	f_shutdown_helper();
+	f_shutdown_helper(ho := true);
 }
 
 private function f_mo_l3_transceive(RSL_DCHAN_PT rsl := RSL,
@@ -6042,7 +6054,7 @@
 	f_ctrs_bsc_and_bts_add(0, "interbsc_ho_out:attempted");
 	f_ctrs_bsc_and_bts_add(0, "interbsc_ho_out:timeout");
 	f_ctrs_bsc_and_bts_verify();
-	f_shutdown_helper();
+	f_shutdown_helper(ho := true);
 }
 
 /* BSC asks for inter-BSC HO, receives BSSMAP Handover Command, but MS reports
@@ -6124,7 +6136,7 @@
 	f_ctrs_bsc_and_bts_add(0, "interbsc_ho_out:attempted");
 	f_ctrs_bsc_and_bts_add(0, "interbsc_ho_out:failed");
 	f_ctrs_bsc_and_bts_verify();
-	f_shutdown_helper();
+	f_shutdown_helper(ho := true);
 }
 
 /* BSC asks for inter-BSC-out HO, receives BSSMAP Handover Command, but then no reply is received about HO outcome
@@ -6225,7 +6237,7 @@
 	f_ctrs_bsc_and_bts_add(0, "interbsc_ho_out:attempted");
 	f_ctrs_bsc_and_bts_add(0, "interbsc_ho_out:timeout");
 	f_ctrs_bsc_and_bts_verify();
-	f_shutdown_helper();
+	f_shutdown_helper(ho := true);
 }
 
 private function f_ho_into_this_bsc(charstring id, template (omit) BSSMAP_oldToNewBSSIEs oldToNewBSSIEs := omit) runs on MSC_ConnHdlr {
@@ -6431,7 +6443,7 @@
 testcase TC_ho_into_this_bsc() runs on test_CT {
 	var TestHdlrParams pars := f_gen_test_hdlr_pars();
 	f_tc_ho_into_this_bsc_main(pars);
-	f_shutdown_helper();
+	f_shutdown_helper(ho := true);
 }
 
 function f_tc_ho_into_this_bsc_a5(TestHdlrEncrParams encr, charstring vty_a5_cfg := VTY_A5_DEFAULT,
@@ -6440,7 +6452,7 @@
 	pars.encr := encr;
 	pars.expect_ho_fail := expect_fail;
 	f_tc_ho_into_this_bsc_main(pars, vty_a5_cfg);
-	f_shutdown_helper();
+	f_shutdown_helper(ho := true);
 }
 
 testcase TC_ho_into_this_bsc_a5_0() runs on test_CT {
@@ -6485,7 +6497,7 @@
 	var TestHdlrParams pars := f_gen_test_hdlr_pars();
 	pars.host_aoip_tla := "::6";
 	f_tc_ho_into_this_bsc_main(pars);
-	f_shutdown_helper();
+	f_shutdown_helper(ho := true);
 }
 
 /* Similar to TC_ho_into_this_bsc, but when in SRVCC, HO Req contains "Old BSS
@@ -6502,7 +6514,7 @@
 	f_ctrs_bsc_and_bts_add(0, "srvcc:attempted");
 	f_ctrs_bsc_and_bts_add(0, "srvcc:completed");
 	f_ctrs_bsc_and_bts_verify();
-	f_shutdown_helper();
+	f_shutdown_helper(ho := true);
 }
 
 /* Same as TC_srvcc_eutran_to_geran, but enables ciphering on the target channel. */
@@ -6516,7 +6528,7 @@
 	f_ctrs_bsc_and_bts_add(0, "srvcc:attempted");
 	f_ctrs_bsc_and_bts_add(0, "srvcc:completed");
 	f_ctrs_bsc_and_bts_verify();
-	f_shutdown_helper();
+	f_shutdown_helper(ho := true);
 }
 
 /* Same as TC_srvcc_eutran_to_geran, but test explicitly forbiding fast return
@@ -6697,7 +6709,7 @@
 	f_ctrs_bsc_and_bts_add(0, "interbsc_ho_in:attempted");
 	f_ctrs_bsc_and_bts_add(0, "interbsc_ho_in:stopped");
 	f_ctrs_bsc_and_bts_verify();
-	f_shutdown_helper();
+	f_shutdown_helper(ho := true);
 }
 
 private function f_tc_ho_in_fail_msc_clears_after_ho_detect(charstring id) runs on MSC_ConnHdlr {
@@ -6788,7 +6800,7 @@
 	f_ctrs_bsc_and_bts_add(0, "interbsc_ho_in:attempted");
 	f_ctrs_bsc_and_bts_add(0, "interbsc_ho_in:stopped");
 	f_ctrs_bsc_and_bts_verify();
-	f_shutdown_helper();
+	f_shutdown_helper(ho := true);
 }
 
 /* The new BSS's lchan times out before the MSC decides that handover failed. */
@@ -6878,7 +6890,7 @@
 	f_ctrs_bsc_and_bts_add(0, "interbsc_ho_in:attempted");
 	f_ctrs_bsc_and_bts_add(0, "interbsc_ho_in:error");
 	f_ctrs_bsc_and_bts_verify();
-	f_shutdown_helper();
+	f_shutdown_helper(ho := true);
 }
 
 /* Same as f_tc_ho_in_fail_no_detect, but MSC fails to send a Clear Command */
@@ -6960,7 +6972,7 @@
 	f_ctrs_bsc_and_bts_add(0, "interbsc_ho_in:attempted");
 	f_ctrs_bsc_and_bts_add(0, "interbsc_ho_in:error");
 	f_ctrs_bsc_and_bts_verify();
-	f_shutdown_helper();
+	f_shutdown_helper(ho := true);
 }
 
 /* An incoming inter-BSC HO can either issue the Handover Request message attached to the initial SCCP N-Connect (as in
@@ -6970,7 +6982,7 @@
 	var TestHdlrParams pars := f_gen_test_hdlr_pars();
 	pars.inter_bsc_ho_in__ho_req_in_initial_sccp_cr := false;
 	f_tc_ho_into_this_bsc_main(pars);
-	f_shutdown_helper();
+	f_shutdown_helper(ho := true);
 }
 
 type record of charstring Commands;
@@ -7204,7 +7216,7 @@
 	f_ctrs_bts_add(1, "incoming_intra_bsc_ho:failed");
 
 	f_ctrs_bsc_and_bts_verify();
-	f_shutdown_helper();
+	f_shutdown_helper(ho := true);
 }
 
 private function f_tc_ho_neighbor_config_2(charstring id) runs on MSC_ConnHdlr {
@@ -7257,7 +7269,7 @@
 	f_ctrs_bsc_and_bts_add(0, "handover:error");
 
 	f_ctrs_bsc_and_bts_verify();
-	f_shutdown_helper();
+	f_shutdown_helper(ho := true);
 }
 
 private function f_tc_ho_neighbor_config_3(charstring id) runs on MSC_ConnHdlr {
@@ -7309,7 +7321,7 @@
 	f_ctrs_bts_add(2, "incoming_intra_bsc_ho:failed");
 
 	f_ctrs_bsc_and_bts_verify();
-	f_shutdown_helper();
+	f_shutdown_helper(ho := true);
 }
 
 private function f_tc_ho_neighbor_config_4(charstring id) runs on MSC_ConnHdlr {
@@ -7366,7 +7378,7 @@
 	f_ctrs_bsc_and_bts_add(0, "interbsc_ho_out:timeout");
 
 	f_ctrs_bsc_and_bts_verify();
-	f_shutdown_helper();
+	f_shutdown_helper(ho := true);
 }
 
 private function f_tc_ho_neighbor_config_5(charstring id) runs on MSC_ConnHdlr {
@@ -7409,7 +7421,7 @@
 	f_ctrs_bsc_and_bts_add(0, "interbsc_ho_out:timeout");
 
 	f_ctrs_bsc_and_bts_verify();
-	f_shutdown_helper();
+	f_shutdown_helper(ho := true);
 }
 
 private function f_tc_ho_neighbor_config_6(charstring id) runs on MSC_ConnHdlr {
@@ -7451,7 +7463,7 @@
 	f_ctrs_bsc_and_bts_add(0, "handover:error");
 
 	f_ctrs_bsc_and_bts_verify();
-	f_shutdown_helper();
+	f_shutdown_helper(ho := true);
 }
 
 private function f_tc_ho_neighbor_config_7(charstring id) runs on MSC_ConnHdlr {
@@ -7508,7 +7520,7 @@
 	f_ctrs_bsc_and_bts_add(0, "interbsc_ho_out:timeout");
 
 	f_ctrs_bsc_and_bts_verify();
-	f_shutdown_helper();
+	f_shutdown_helper(ho := true);
 }
 
 /* OS#3041: Open and close N connections in a normal fashion, and expect no
@@ -10367,7 +10379,7 @@
 	f_sleep(1.0);
 	vc_conn := f_start_handler(refers(f_tc_ho_during_lcs_loc_req), pars);
 	vc_conn.done;
-	f_shutdown_helper();
+	f_shutdown_helper(ho := true);
 }
 
 private function f_tc_emerg_call_and_lcs_loc_req(charstring id) runs on MSC_ConnHdlr
