aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/src
diff options
context:
space:
mode:
authorHolger Hans Peter Freyther <zecke@selfish.org>2011-01-10 15:34:09 +0100
committerHolger Hans Peter Freyther <zecke@selfish.org>2011-01-10 15:34:09 +0100
commitcdfcbee53b705d136dbfbd7959d1b8b516e98522 (patch)
tree1e8d74229c447311120d7f833b36483efe71e568 /openbsc/src
parentc464491b0be0fb9b845ae6aababddc1b17ffda30 (diff)
sms: Allow to specify the DCS for the SMS.
Diffstat (limited to 'openbsc/src')
-rw-r--r--openbsc/src/gsm_04_11.c4
-rw-r--r--openbsc/src/token_auth.c2
-rw-r--r--openbsc/src/vty_interface_layer3.c2
3 files changed, 4 insertions, 4 deletions
diff --git a/openbsc/src/gsm_04_11.c b/openbsc/src/gsm_04_11.c
index a7c6f667d..812e758cd 100644
--- a/openbsc/src/gsm_04_11.c
+++ b/openbsc/src/gsm_04_11.c
@@ -117,7 +117,7 @@ void sms_free(struct gsm_sms *sms)
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 @@ struct gsm_sms *sms_from_text(struct gsm_subscriber *receiver, const char *text)
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 733ea7173..3404dd4ee 100644
--- a/openbsc/src/token_auth.c
+++ b/openbsc/src/token_auth.c
@@ -79,7 +79,7 @@ static int token_subscr_cb(unsigned int subsys, unsigned int signal,
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 d13031ba1..56b496678 100644
--- a/openbsc/src/vty_interface_layer3.c
+++ b/openbsc/src/vty_interface_layer3.c
@@ -146,7 +146,7 @@ static int _send_sms_str(struct gsm_subscriber *receiver, char *str,
{
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 */