diff --git a/src/libmsc/gsm_04_11.c b/src/libmsc/gsm_04_11.c
index 6c6a1fb..3153610 100644
--- a/src/libmsc/gsm_04_11.c
+++ b/src/libmsc/gsm_04_11.c
@@ -189,7 +189,7 @@
 	return gsm411_smc_send(&trans->sms.smc_inst, msg_type, msg);
 }
 
-static int gsm340_rx_sms_submit(struct msgb *msg, struct gsm_sms *gsms)
+static int gsm340_rx_sms_submit(struct gsm_sms *gsms)
 {
 	if (db_sms_store(gsms) != 0) {
 		LOGP(DLSMS, LOGL_ERROR, "Failed to store SMS in Database\n");
@@ -279,8 +279,9 @@
 	return msg->len - old_msg_len;
 }
 
-int sms_route_mt_sms(struct gsm_subscriber_connection *conn, struct msgb *msg,
-		     struct gsm_sms *gsms, uint8_t sms_mti, bool *deferred)
+static int sms_route_mt_sms(struct gsm_subscriber_connection *conn,
+			    struct gsm_sms *gsms, uint8_t sms_mti,
+			    bool *deferred)
 {
 	int rc;
 
@@ -344,7 +345,7 @@
 	switch (sms_mti) {
 	case GSM340_SMS_SUBMIT_MS2SC:
 		/* MS is submitting a SMS */
-		rc = gsm340_rx_sms_submit(msg, gsms);
+		rc = gsm340_rx_sms_submit(gsms);
 		break;
 	case GSM340_SMS_COMMAND_MS2SC:
 	case GSM340_SMS_DELIVER_REP_MS2SC:
@@ -488,7 +489,7 @@
 	/* FIXME: This looks very wrong */
 	send_signal(0, NULL, gsms, 0);
 
-	rc = sms_route_mt_sms(conn, msg, gsms, sms_mti, deferred);
+	rc = sms_route_mt_sms(conn, gsms, sms_mti, deferred);
 out:
 	if (!deferred)
 		sms_free(gsms);
