diff options
Diffstat (limited to 'meta/recipes-connectivity/gsm/files/0005-Add-ask-ds-option-forSMS.patch')
-rw-r--r-- | meta/recipes-connectivity/gsm/files/0005-Add-ask-ds-option-forSMS.patch | 132 |
1 files changed, 0 insertions, 132 deletions
diff --git a/meta/recipes-connectivity/gsm/files/0005-Add-ask-ds-option-forSMS.patch b/meta/recipes-connectivity/gsm/files/0005-Add-ask-ds-option-forSMS.patch deleted file mode 100644 index faf0e8a382..0000000000 --- a/meta/recipes-connectivity/gsm/files/0005-Add-ask-ds-option-forSMS.patch +++ /dev/null | |||
@@ -1,132 +0,0 @@ | |||
1 | Upstream-Status: Inappropriate [not used] | ||
2 | |||
3 | diff --git a/include/gsmd/usock.h b/include/gsmd/usock.h | ||
4 | index 236ad78..66cdf48 100644 | ||
5 | --- a/include/gsmd/usock.h | ||
6 | +++ b/include/gsmd/usock.h | ||
7 | @@ -332,6 +332,7 @@ struct gsmd_sms { | ||
8 | struct gsmd_sms_submit { | ||
9 | struct gsmd_addr addr; | ||
10 | struct gsmd_sms payload; | ||
11 | + int ask_ds; | ||
12 | }; | ||
13 | |||
14 | /* Refer to GSM 07.05 subclause 4.4 */ | ||
15 | diff --git a/include/libgsmd/sms.h b/include/libgsmd/sms.h | ||
16 | index 3ada62d..9808442 100644 | ||
17 | --- a/include/libgsmd/sms.h | ||
18 | +++ b/include/libgsmd/sms.h | ||
19 | @@ -46,6 +46,7 @@ struct lgsm_sms { | ||
20 | enum gsmd_sms_alphabet alpha; | ||
21 | u_int8_t data[LGSM_SMS_DATA_MAXLEN+1]; | ||
22 | int length; | ||
23 | + int ask_ds; | ||
24 | }; | ||
25 | |||
26 | /* GSM 03.40 subclause 9.2.2.2 and GSM 07.05 subclause 4.4 and subclause 3.1 */ | ||
27 | diff --git a/src/gsmd/sms_pdu.c b/src/gsmd/sms_pdu.c | ||
28 | index d1235dd..d461999 100644 | ||
29 | --- a/src/gsmd/sms_pdu.c | ||
30 | +++ b/src/gsmd/sms_pdu.c | ||
31 | @@ -247,7 +247,8 @@ int sms_pdu_make_smssubmit(char *dest, const struct gsmd_sms_submit *src) | ||
32 | GSMD_SMS_TP_MTI_SUBMIT | | ||
33 | (0 << 2) | /* Reject Duplicates: 0 */ | ||
34 | GSMD_SMS_TP_VPF_NOT_PRESENT | | ||
35 | - GSMD_SMS_TP_SRR_STATUS_REQUEST | | ||
36 | + (src->ask_ds ? GSMD_SMS_TP_SRR_STATUS_REQUEST : | ||
37 | + GSMD_SMS_TP_SRR_NOT_REQUEST) | | ||
38 | (src->payload.has_header ? GSMD_SMS_TP_UDHI_WITH_HEADER : | ||
39 | GSMD_SMS_TP_UDHI_NO_HEADER) | | ||
40 | GSMD_SMS_TP_RP_NOT_SET; | ||
41 | diff --git a/src/libgsmd/libgsmd_sms.c b/src/libgsmd/libgsmd_sms.c | ||
42 | index 22d7dbf..bbc8689 100644 | ||
43 | --- a/src/libgsmd/libgsmd_sms.c | ||
44 | +++ b/src/libgsmd/libgsmd_sms.c | ||
45 | @@ -126,6 +126,7 @@ int lgsm_sms_send(struct lgsm_handle *lh, | ||
46 | if (lgsm_number2addr(&gss->addr, sms->addr, 1)) | ||
47 | return -EINVAL; | ||
48 | |||
49 | + gss->ask_ds = sms->ask_ds; | ||
50 | gss->payload.has_header = 0; | ||
51 | gss->payload.length = sms->length; | ||
52 | gss->payload.coding_scheme = sms->alpha; | ||
53 | @@ -161,6 +162,7 @@ int lgsm_sms_write(struct lgsm_handle *lh, | ||
54 | if (lgsm_number2addr(&gsw->sms.addr, sms_write->sms.addr, 1)) | ||
55 | return -EINVAL; | ||
56 | |||
57 | + gsw->sms.ask_ds = sms_write->sms.ask_ds; | ||
58 | gsw->sms.payload.has_header = 0; | ||
59 | gsw->sms.payload.length = sms_write->sms.length; | ||
60 | gsw->sms.payload.coding_scheme = sms_write->sms.alpha; | ||
61 | diff --git a/src/util/shell.c b/src/util/shell.c | ||
62 | index f902126..f26e17e 100644 | ||
63 | --- a/src/util/shell.c | ||
64 | +++ b/src/util/shell.c | ||
65 | @@ -355,7 +355,7 @@ static int shell_help(void) | ||
66 | "\tsd\tSMS Delete (sd=index,delflg)\n" | ||
67 | "\tsl\tSMS List (sl=stat)\n" | ||
68 | "\tsr\tSMS Read (sr=index)\n" | ||
69 | - "\tss\tSMS Send (ss=number,text|[\"text\"])\n" | ||
70 | + "\tss\tSMS Send (ss=ask_ds,number,text|[\"text\"])\n" | ||
71 | "\tsw\tSMS Write (sw=stat,number,text)\n" | ||
72 | "\tsm\tSMS Storage stats\n" | ||
73 | "\tsM\tSMS Set preferred storage (sM=mem1,mem2,mem3)\n" | ||
74 | @@ -563,33 +563,29 @@ int shell_main(struct lgsm_handle *lgsmh) | ||
75 | struct lgsm_sms sms; | ||
76 | |||
77 | ptr = strchr(buf, '='); | ||
78 | + sms.ask_ds = atoi(ptr+1); | ||
79 | fcomma = strchr(buf, ','); | ||
80 | - if (!ptr || !fcomma) { | ||
81 | - printf("Wrong command format\n"); | ||
82 | - } else { | ||
83 | - strncpy(sms.addr, ptr+1, fcomma-ptr-1); | ||
84 | - sms.addr[fcomma-ptr-1] = '\0'; | ||
85 | - | ||
86 | - /* todo define \" to allow " in text */ | ||
87 | - if (fcomma[1] == '"' && | ||
88 | - !strchr(fcomma+2, '"')) { | ||
89 | + lcomma = strchr(fcomma+1, ','); | ||
90 | + strncpy(sms.addr, fcomma+1, lcomma-fcomma-1); | ||
91 | + sms.addr[lcomma-fcomma-1] = '\0'; | ||
92 | + /* todo define \" to allow " in text */ | ||
93 | + if (lcomma[1]=='"' && | ||
94 | + !strchr(lcomma+2, '"')) { | ||
95 | /* read until closing '"' */ | ||
96 | rc = fscanf(stdin, "%[^\"]\"", | ||
97 | - fcomma+strlen(fcomma)); | ||
98 | + lcomma+strlen(lcomma)); | ||
99 | if (rc == EOF) { | ||
100 | printf("EOF\n"); | ||
101 | return -1; | ||
102 | } | ||
103 | /* remove brackets */ | ||
104 | - fcomma++; | ||
105 | - fcomma[strlen(fcomma)] = '\0'; | ||
106 | - } | ||
107 | - | ||
108 | - printf("Send SMS\n"); | ||
109 | - packing_7bit_character(fcomma+1, &sms); | ||
110 | + lcomma++; | ||
111 | + lcomma[strlen(lcomma)] = '\0'; | ||
112 | + } | ||
113 | + printf("Send SMS\n"); | ||
114 | + packing_7bit_character(lcomma+1, &sms); | ||
115 | |||
116 | - lgsm_sms_send(lgsmh, &sms); | ||
117 | - } | ||
118 | + lgsm_sms_send(lgsmh, &sms); | ||
119 | } else if ( !strncmp(buf, "sw", 2)) { | ||
120 | printf("Write SMS\n"); | ||
121 | struct lgsm_sms_write sms_write; | ||
122 | @@ -603,6 +599,7 @@ int shell_main(struct lgsm_handle *lgsmh) | ||
123 | sms_write.sms.addr[lcomma-fcomma-1] = '\0'; | ||
124 | packing_7bit_character( | ||
125 | lcomma+1, &sms_write.sms); | ||
126 | + sms_write.sms.ask_ds = 0; | ||
127 | |||
128 | lgsm_sms_write(lgsmh, &sms_write); | ||
129 | } else if (!strncmp(buf, "sm", 2)) { | ||
130 | -- | ||
131 | 1.5.2.1 | ||
132 | |||