diff --git a/gbproxy/GBProxy_Tests.ttcn b/gbproxy/GBProxy_Tests.ttcn
index df32174..78eb389 100644
--- a/gbproxy/GBProxy_Tests.ttcn
+++ b/gbproxy/GBProxy_Tests.ttcn
@@ -384,6 +384,9 @@
 	[] SGSN_MGMT.receive(BssgpStatusIndication:{*, ?, ?}) {
 		repeat;
 		}
+	[] SGSN_MGMT.receive(BssgpResetIndication:?) {
+		repeat;
+		}
 	[] SGSN_MGMT.receive {
 		setverdict(fail, "Received unexpected message on SGSN_MGMT");
 		mtc.stop;
diff --git a/library/BSSGP_Emulation.ttcnpp b/library/BSSGP_Emulation.ttcnpp
index 2fa588b..c39adaa 100644
--- a/library/BSSGP_Emulation.ttcnpp
+++ b/library/BSSGP_Emulation.ttcnpp
@@ -1157,6 +1157,9 @@
 	/* we are a SGSN: BSS/PCU-originated RESET must have a cell ID */
 	[g_sgsn_role] BVC.receive(tr_ptp_BnsUdInd(tr_BVC_RESET(?, g_cfg.bvci, g_cfg.cell_id), 0)) -> value udi {
 		log("Rx BVC-RESET from BVCI=", g_cfg.bvci);
+		if (MGMT.checkstate("Connected")) {
+			MGMT.send(BssgpResetIndication:{g_cfg.bvci});
+		}
 		/* Respond to RESET with correct BVCI but without CellID */
 		BVC.send(ts_ptp_BnsUdReq(ts_BVC_RESET_ACK(g_cfg.bvci, omit), 0, g_bvc_lsp));
 		/* FIXME: reset all state? What about clients? */
@@ -1165,6 +1168,9 @@
 	/* we are a BSS/PCU: SGSN-originated RESET must not have a cell ID */
 	[not g_sgsn_role] BVC.receive(tr_ptp_BnsUdInd(tr_BVC_RESET(?, g_cfg.bvci, omit), 0)) -> value udi {
 		log("Rx BVC-RESET from BVCI=", g_cfg.bvci);
+		if (MGMT.checkstate("Connected")) {
+			MGMT.send(BssgpResetIndication:{g_cfg.bvci});
+		}
 		/* Respond to RESET with correct BVCI with CellID */
 		BVC.send(ts_ptp_BnsUdReq(ts_BVC_RESET_ACK(g_cfg.bvci, g_cfg.cell_id), 0, g_bvc_lsp));
 		/* FIXME: reset all state? What about clients? */
