Hi,
I "stole" this patch from Andrew, and handled some more cases in send
ss and send ussd. As he is off these days and I need this patch for my code, so
I dig it out and resubmit here.
I declare Andrew still has the copyright of this patch :)
>-----Original Message-----
>From: Yang Gu [mailto:[email protected]]
>Sent: Friday, July 09, 2010 10:52 PM
>To: [email protected]
>Cc: Gu, Yang
>Subject: [PATCH 3/3] Interpret "" Alpha Id as empty data object
>
>There needs to be a way to distinguish between no alphaid and "empty
>data object" because on some occasions they have different meanings. In
>the Call Control envelope, no Alpha Identifier means the terminal can
>inform the user about the call being modified by SIM while empty data
>object means no hint should be given.
>---
> src/stkutil.c | 4 +++-
> unit/test-stkutil.c | 18 ++++++++++++++----
> 2 files changed, 17 insertions(+), 5 deletions(-)
>
>diff --git a/src/stkutil.c b/src/stkutil.c
>index 94ff182..c45f985 100644
>--- a/src/stkutil.c
>+++ b/src/stkutil.c
>@@ -297,8 +297,10 @@ static gboolean parse_dataobj_alpha_id(struct
>comprehension_tlv_iter *iter,
> char *utf8;
>
> len = comprehension_tlv_iter_get_length(iter);
>- if (len == 0)
>+ if (len == 0) {
>+ *alpha_id = g_try_malloc0(1);
> return TRUE;
>+ }
>
> data = comprehension_tlv_iter_get_data(iter);
> utf8 = sim_string_to_utf8(data, len);
>diff --git a/unit/test-stkutil.c b/unit/test-stkutil.c
>index 0b95265..dbd5b5e 100644
>--- a/unit/test-stkutil.c
>+++ b/unit/test-stkutil.c
>@@ -4974,7 +4974,8 @@ static struct setup_menu_test setup_menu_data_112 = {
> static struct setup_menu_test setup_menu_data_113 = {
> .pdu = setup_menu_113,
> .pdu_len = sizeof(setup_menu_113),
>- .qualifier = 0x00
>+ .qualifier = 0x00,
>+ .alpha_id = ""
> };
>
> static struct setup_menu_test setup_menu_data_121 = {
>@@ -5442,7 +5443,8 @@ static struct setup_menu_test setup_menu_data_712 = {
> static struct setup_menu_test setup_menu_data_713 = {
> .pdu = setup_menu_713,
> .pdu_len = sizeof(setup_menu_713),
>- .qualifier = 0x00
>+ .qualifier = 0x00,
>+ .alpha_id = ""
> };
>
> static struct setup_menu_test setup_menu_data_811 = {
>@@ -5472,7 +5474,8 @@ static struct setup_menu_test setup_menu_data_812 = {
> static struct setup_menu_test setup_menu_data_813 = {
> .pdu = setup_menu_813,
> .pdu_len = sizeof(setup_menu_813),
>- .qualifier = 0x00
>+ .qualifier = 0x00,
>+ .alpha_id = ""
> };
>
> static struct setup_menu_test setup_menu_data_911 = {
>@@ -5502,7 +5505,8 @@ static struct setup_menu_test setup_menu_data_912 = {
> static struct setup_menu_test setup_menu_data_913 = {
> .pdu = setup_menu_913,
> .pdu_len = sizeof(setup_menu_913),
>- .qualifier = 0x00
>+ .qualifier = 0x00,
>+ .alpha_id = ""
> };
>
> static struct setup_menu_test setup_menu_data_neg_1 = {
>@@ -7957,6 +7961,7 @@ static struct send_sms_test send_sms_data_171 = {
> .pdu = send_sms_171,
> .pdu_len = sizeof(send_sms_171),
> .qualifier = 0x00,
>+ .alpha_id = "",
> .gsm_sms = {
> {
> .number_type = SMS_NUMBER_TYPE_INTERNATIONAL,
>@@ -9474,6 +9479,7 @@ static struct send_ss_test send_ss_data_161 = {
> .pdu = send_ss_161,
> .pdu_len = sizeof(send_ss_161),
> .qualifier = 0x00,
>+ .alpha_id = "",
> .ss = {
> .ton_npi = 0x91,
> .ss = "**21*01234567890123456789*10#"
>@@ -10774,6 +10780,7 @@ static struct send_ussd_test send_ussd_data_181 = {
> .pdu = send_ussd_181,
> .pdu_len = sizeof(send_ussd_181),
> .qualifier = 0x00,
>+ .alpha_id = "",
> .ussd = "ABCDEFGHIJKLMNOPQRSTUVWXYZ-abcdefghijklmnopqrstuvwxyz-"
> "1234567890"
> };
>@@ -14621,6 +14628,7 @@ static struct run_at_command_test
>run_at_command_data_121 = {
> .pdu = run_at_command_121,
> .pdu_len = sizeof(run_at_command_121),
> .qualifier = 0x00,
>+ .alpha_id = "",
> .at_command = "AT+CGMI"
> };
>
>@@ -15319,6 +15327,7 @@ static struct send_dtmf_test send_dtmf_data_131 = {
> .pdu = send_dtmf_131,
> .pdu_len = sizeof(send_dtmf_131),
> .qualifier = 0x00,
>+ .alpha_id = "",
> .dtmf = "1cccccccccc2"
> };
>
>@@ -16039,6 +16048,7 @@ static struct launch_browser_test
>launch_browser_data_121 = {
> .pdu = launch_browser_121,
> .pdu_len = sizeof(launch_browser_121),
> .qualifier = 0x00,
>+ .alpha_id = "",
> .url = "http://xxx.yyy.zzz"
> };
>
>--
>1.7.0.4
Regards,
-Yang
_______________________________________________
ofono mailing list
[email protected]
http://lists.ofono.org/listinfo/ofono