diff --git a/openbsc/src/osmo-bsc/Makefile.am b/openbsc/src/osmo-bsc/Makefile.am
index 63972c8..9c091af 100644
--- a/openbsc/src/osmo-bsc/Makefile.am
+++ b/openbsc/src/osmo-bsc/Makefile.am
@@ -16,5 +16,7 @@
 		 $(top_builddir)/src/libcommon/libcommon.a \
 		 $(top_builddir)/src/libctrl/libctrl.a \
 		 $(top_builddir)/src/libcommon/libcommon.a \
-		 $(LIBOSMOSCCP_LIBS) $(LIBOSMOCORE_LIBS) \
-		 $(LIBOSMOGSM_LIBS) $(LIBOSMOVTY_LIBS) $(COVERAGE_LDFLAGS) $(LIBOSMOABIS_LIBS)
+		 -ldbi -ldl $(LIBOSMOSCCP_LIBS) \
+		 $(LIBSMPP34_LIBS) $(LIBOSMOCORE_LIBS) \
+		 $(LIBOSMOGSM_LIBS) $(LIBOSMOVTY_LIBS) $(COVERAGE_LDFLAGS) \
+		 $(LIBOSMOABIS_LIBS)
diff --git a/openbsc/src/osmo-bsc/osmo_bsc_api.c b/openbsc/src/osmo-bsc/osmo_bsc_api.c
index 675bbb2..8288d3b 100644
--- a/openbsc/src/osmo-bsc/osmo_bsc_api.c
+++ b/openbsc/src/osmo-bsc/osmo_bsc_api.c
@@ -87,8 +87,8 @@
 	queue_msg_or_return(resp);
 }
 
-static void bsc_send_ussd_notification(struct gsm_subscriber_connection *conn,
-			   struct msgb *msg, const char *text)
+static void bsc_send_ussd_no_srv(struct gsm_subscriber_connection *conn,
+				 struct msgb *msg, const char *text)
 {
 	struct gsm48_hdr *gh;
 	int8_t pdisc;
@@ -119,10 +119,14 @@
 	}
 
 	if (drop_message) {
-		LOGP(DMSC, LOGL_DEBUG, "Skipping (not sending) USSD message: '%s'\n", text);
+		LOGP(DMSC, LOGL_DEBUG, "Skipping (not sending) USSD message: '%s'\n",
+		     text);
 		return;
 	}
 
+	LOGP(DMSC, LOGL_INFO, "Sending CM Service Accept\n");
+	gsm48_tx_mm_serv_ack(conn);
+
 	LOGP(DMSC, LOGL_INFO, "Sending USSD message: '%s'\n", text);
 	gsm0480_send_ussdNotify(conn, 1, text);
 	gsm0480_send_releaseComplete(conn);
@@ -143,7 +147,8 @@
 	msc = bsc_find_msc(conn, msg);
 	if (!msc) {
 		LOGP(DMSC, LOGL_ERROR, "Failed to find a MSC for a connection.\n");
-		bsc_send_ussd_notification(conn, msg, conn->bts->network->bsc_data->ussd_no_msc_txt);
+		bsc_send_ussd_no_srv(conn, msg,
+				     conn->bts->network->bsc_data->ussd_no_msc_txt);
 		return -1;
 	}
 
@@ -164,9 +169,9 @@
 	if (ret != BSC_CON_SUCCESS) {
 		/* allocation has failed */
 		if (ret == BSC_CON_REJECT_NO_LINK)
-			bsc_send_ussd_notification(conn, msg, msc->ussd_msc_lost_txt);
+			bsc_send_ussd_no_srv(conn, msg, msc->ussd_msc_lost_txt);
 		else if (ret == BSC_CON_REJECT_RF_GRACE)
-			bsc_send_ussd_notification(conn, msg, msc->ussd_grace_txt);
+			bsc_send_ussd_no_srv(conn, msg, msc->ussd_grace_txt);
 
 		return BSC_API_CONN_POL_REJECT;
 	}
