[SMS] Properly reject processing of compressed SMS

As we don't support compressed SMS, we have to properly reject it.

In the existing code, we segfaulted at some later point since the error
handling was incomplete.

This was triggered by some obscure STK SIM card that insisted on sending a
compressed SMS after registering to the OpenBSC network.
diff --git a/openbsc/src/gsm_04_11.c b/openbsc/src/gsm_04_11.c
index f84463c..82c4084 100644
--- a/openbsc/src/gsm_04_11.c
+++ b/openbsc/src/gsm_04_11.c
@@ -369,9 +369,11 @@
 	enum sms_alphabet alpha = DCS_NONE;
 
 	if ((cgbits & 0xc) == 0) {
-		if (cgbits & 2)
+		if (cgbits & 2) {
 			LOGP(DSMS, LOGL_NOTICE,
 			     "Compressed SMS not supported yet\n");
+			return 0xffffffff;
+		}
 
 		switch ((dcs >> 2)&0x03) {
 		case 0:
@@ -551,6 +553,8 @@
 	gsms->data_coding_scheme = *smsp++;
 
 	sms_alphabet = gsm338_get_sms_alphabet(gsms->data_coding_scheme);
+	if (sms_alphabet == 0xffffffff)
+		return GSM411_RP_CAUSE_MO_NET_OUT_OF_ORDER;
 
 	switch (sms_vpf) {
 	case GSM340_TP_VPF_RELATIVE: