diff --git a/msc/BSC_ConnectionHandler.ttcn b/msc/BSC_ConnectionHandler.ttcn
index 1b31f75..bf83dd3 100644
--- a/msc/BSC_ConnectionHandler.ttcn
+++ b/msc/BSC_ConnectionHandler.ttcn
@@ -69,7 +69,8 @@
 	boolean send_early_cm,
 	charstring ipa_ctrl_ip,
 	integer ipa_ctrl_port,
-	boolean ipa_ctrl_enable
+	boolean ipa_ctrl_enable,
+	boolean mm_info
 };
 
 /* get a one-octet bitmaks of supported algorithms based on Classmark information */
@@ -315,6 +316,12 @@
 	}
 }
 
+function f_expect_mm_info() runs on BSC_ConnHdlr {
+	 if (g_pars.mm_info == true) {
+		 BSSAP.receive(tr_PDU_DTAP_MT(tr_ML3_MT_MM_Info));
+	 }
+}
+
 function f_perform_lu()
 runs on BSC_ConnHdlr {
 	var PDU_ML3_MS_NW l3_lu := f_build_lu_imsi(g_pars.imsi)
@@ -363,6 +370,10 @@
 		mtc.stop;
 		}
 	}
+
+	/* Wait for MM-Information (if enabled) */
+	f_expect_mm_info();
+
 	/* FIXME: there could be pending SMS or other common procedures by the MSC, let's ignore them */
 	BSSAP.receive(tr_BSSMAP_ClearCommand);
 	BSSAP.send(ts_BSSMAP_ClearComplete);
diff --git a/msc/MSC_Tests.ttcn b/msc/MSC_Tests.ttcn
index d121b63..0ac61bc 100644
--- a/msc/MSC_Tests.ttcn
+++ b/msc/MSC_Tests.ttcn
@@ -95,6 +95,7 @@
 	integer mp_msc_vty_port := 4254;
 
 	/* local parameters of emulated HLR */
+	boolean mp_mm_info := false;
 	charstring mp_hlr_ip := "127.0.0.1";
 	integer mp_hlr_port := 4222;
 	charstring mp_mgw_ip := "127.0.0.1";
@@ -457,7 +458,8 @@
 		send_early_cm := true,
 		ipa_ctrl_ip := mp_msc_ip,
 		ipa_ctrl_port := mp_msc_ctrl_port,
-		ipa_ctrl_enable := true
+		ipa_ctrl_enable := true,
+		mm_info := mp_mm_info
 	};
 	return pars;
 }
@@ -855,6 +857,9 @@
 		}
 	}
 
+	/* Wait for MM-Information (if enabled) */
+	f_expect_mm_info();
+
 	/* wait for normal teardown */
 	f_expect_clear();
 }
