libmsc: fix memory leak (struct gsm_sms) in gsm340_rx_tpdu()

If a MO SMS gets successfully routed through SMPP, we return early
in gsm340_rx_tpdu() and leak a chunk of type 'struct gsm_sms'.

Change-Id: I8a745d747f06baa7109418ffe600b27b3c0a5228
Fixes: [1] Ic34d398e0a850856e20380ae35e5c2ae5e3c539b
Fixes: OS#5334
diff --git a/src/libmsc/gsm_04_11.c b/src/libmsc/gsm_04_11.c
index 199fdc1..bd7cf1f 100644
--- a/src/libmsc/gsm_04_11.c
+++ b/src/libmsc/gsm_04_11.c
@@ -631,7 +631,8 @@
 
 	/* This SMS got routed through SMPP and we are waiting on the response. */
 	if (gsms->smpp.esme) {
-		return -EINPROGRESS;
+		rc = -EINPROGRESS;
+		goto out;
 	}
 
 	/* This SMS got routed through SMPP, but the configured ESME was