sms: Allow to specify the DCS for the SMS.
diff --git a/openbsc/include/openbsc/gsm_04_11.h b/openbsc/include/openbsc/gsm_04_11.h
index 06fd04e..5969788 100644
--- a/openbsc/include/openbsc/gsm_04_11.h
+++ b/openbsc/include/openbsc/gsm_04_11.h
@@ -29,7 +29,7 @@
 
 struct gsm_sms *sms_alloc(void);
 void sms_free(struct gsm_sms *sms);
-struct gsm_sms *sms_from_text(struct gsm_subscriber *receiver, const char *text);
+struct gsm_sms *sms_from_text(struct gsm_subscriber *receiver, int dcs, const char *text);
 
 void _gsm411_sms_trans_free(struct gsm_trans *trans);
 int gsm411_send_sms_subscr(struct gsm_subscriber *subscr,
diff --git a/openbsc/src/gsm_04_11.c b/openbsc/src/gsm_04_11.c
index a7c6f66..812e758 100644
--- a/openbsc/src/gsm_04_11.c
+++ b/openbsc/src/gsm_04_11.c
@@ -117,7 +117,7 @@
 	talloc_free(sms);
 }
 
-struct gsm_sms *sms_from_text(struct gsm_subscriber *receiver, const char *text)
+struct gsm_sms *sms_from_text(struct gsm_subscriber *receiver, int dcs, const char *text)
 {
 	struct gsm_sms *sms = sms_alloc();
 
@@ -133,7 +133,7 @@
 	sms->status_rep_req = 0;
 	sms->ud_hdr_ind = 0;
 	sms->protocol_id = 0; /* implicit */
-	sms->data_coding_scheme = 0; /* default 7bit */
+	sms->data_coding_scheme = dcs;
 	strncpy(sms->dest_addr, receiver->extension, sizeof(sms->dest_addr)-1);
 	/* Generate user_data */
 	sms->user_data_len = gsm_7bit_encode(sms->user_data, sms->text);
diff --git a/openbsc/src/token_auth.c b/openbsc/src/token_auth.c
index 733ea71..3404dd4 100644
--- a/openbsc/src/token_auth.c
+++ b/openbsc/src/token_auth.c
@@ -79,7 +79,7 @@
 			goto unauth;
 		}
 
-		sms = sms_from_text(subscr, sms_str);
+		sms = sms_from_text(subscr, 0, sms_str);
 		talloc_free(sms_str);
 		if (!sms) {
 			rc = -ENOMEM;
diff --git a/openbsc/src/vty_interface_layer3.c b/openbsc/src/vty_interface_layer3.c
index d13031b..56b4966 100644
--- a/openbsc/src/vty_interface_layer3.c
+++ b/openbsc/src/vty_interface_layer3.c
@@ -146,7 +146,7 @@
 {
 	struct gsm_sms *sms;
 
-	sms = sms_from_text(receiver, str);
+	sms = sms_from_text(receiver, 0, str);
 	sms->protocol_id = tp_pid;
 
 	/* store in database for the queue */