ofono/unit/test-stkutil.c

8098 lines
222 KiB
C
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*
* oFono - GSM Telephony Stack for Linux
*
* Copyright (C) 2008-2010 Intel Corporation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*
*/
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <string.h>
#include <glib.h>
#include <glib/gprintf.h>
#include <ofono/types.h>
#include "smsutil.h"
#include "stkutil.h"
#define MAX_ITEM 100
static gboolean g_mem_equal(const unsigned char *v1, const unsigned char *v2,
unsigned int len)
{
unsigned int i;
for (i = 0; i < len; i++)
if (v1[i] != v2[i])
return FALSE;
return TRUE;
}
static inline void check_common_bool(const ofono_bool_t command,
const ofono_bool_t test)
{
g_assert(command == test);
}
static inline void check_common_byte(const unsigned char command,
const unsigned char test)
{
g_assert(command == test);
}
static inline void check_common_text(const char *command, const char *test)
{
if (test == NULL) {
g_assert(command == NULL);
return;
}
g_assert(command != NULL);
g_assert(g_str_equal(command, test));
}
static inline void check_common_byte_array(
const struct stk_common_byte_array *command,
const struct stk_common_byte_array *test)
{
if (test->len == 0) {
g_assert(command->len == 0);
return;
}
g_assert(command->len != 0);
g_assert(g_mem_equal(command->array, test->array, test->len));
}
/* Defined in TS 102.223 Section 8.1 */
static inline void check_address(const struct stk_address *command,
const struct stk_address *test)
{
g_assert(command->ton_npi == test->ton_npi);
g_assert(g_str_equal(command->number, test->number));
}
/* Defined in TS 102.223 Section 8.2 */
static inline void check_alpha_id(const char *command, const char *test)
{
check_common_text(command, test);
}
/* Defined in TS 102.223 Section 8.8 */
static void check_duration(const struct stk_duration *command,
const struct stk_duration *test)
{
g_assert(command->unit == test->unit);
g_assert(command->interval == test->interval);
}
/* Defined in TS 102.223 Section 8.9 */
static void check_item(const struct stk_item *command,
const struct stk_item *test)
{
g_assert(command->id == test->id);
if (command->text == NULL)
g_assert(test->text == NULL);
else
g_assert(g_str_equal(command->text, test->text));
}
/* Defined in TS 102.223 Section 8.10 */
static inline void check_item_id(const unsigned char command,
const unsigned char test)
{
check_common_byte(command, test);
}
static void check_items(GSList *command, const struct stk_item *test)
{
struct stk_item *si;
GSList *l;
unsigned int i = 0;
for (l = command; l; l = l->next) {
si = l->data;
check_item(si, &test[i++]);
}
g_assert(test[i].id == 0);
}
/* Defined in TS 102.223 Section 8.11 */
static void check_response_length(const struct stk_response_length *command,
const struct stk_response_length *test)
{
g_assert(command->min == test->min);
g_assert(command->max == test->max);
}
/* Defined in TS 102.223 Section 8.13 */
static void check_gsm_sms_tpdu(const struct sms *command,
const struct sms *test)
{
g_assert(command->submit.mr == test->submit.mr);
g_assert(command->submit.udl == test->submit.udl);
g_assert(g_str_equal(command->submit.daddr.address,
test->submit.daddr.address));
g_assert(g_mem_equal(command->submit.ud, test->submit.ud,
test->submit.udl));
}
/* Defined in TS 102.223 Section 8.15 */
static inline void check_text(const char *command, const char *test)
{
check_common_text(command, test);
}
/* Defined in TS 102.223 Section 8.16 */
static inline void check_tone(const ofono_bool_t command,
const ofono_bool_t test)
{
check_common_bool(command, test);
}
/* Defined in TS 102.223 Section 8.23 */
static inline void check_default_text(const char *command, const char *test)
{
check_common_text(command, test);
}
/* Defined in TS 102.223 Section 8.24 */
static void check_items_next_action_indicator(
const struct stk_items_next_action_indicator *command,
const struct stk_items_next_action_indicator *test)
{
g_assert(command->len == test->len);
g_assert(g_mem_equal(command->list, test->list, test->len));
}
/* Defined in TS 102.223 Section 8.31 */
static void check_icon_id(const struct stk_icon_id *command,
const struct stk_icon_id *test)
{
g_assert(command->id == test->id);
g_assert(command->qualifier == test->qualifier);
}
/* Defined in TS 102.223 Section 8.32 */
static void check_item_icon_id_list(const struct stk_item_icon_id_list *command,
const struct stk_item_icon_id_list *test)
{
g_assert(command->qualifier == test->qualifier);
g_assert(command->len == test->len);
g_assert(g_mem_equal(command->list, test->list, test->len));
}
/* Defined in TS 102.223 Section 8.43 */
static inline void check_imm_resp(const unsigned char command,
const unsigned char test)
{
check_common_byte(command, test);
}
/* Defined in TS 102.223 Section 8.71 */
static inline void check_cdma_sms_tpdu(
const struct stk_common_byte_array *command,
const struct stk_common_byte_array *test)
{
check_common_byte_array(command, test);
}
/* Defined in TS 102.223 Section 8.72 */
static void check_text_attr(const struct stk_text_attribute *command,
const struct stk_text_attribute *test)
{
g_assert(command->len == test->len);
g_assert(g_mem_equal(command->attributes, test->attributes, test->len));
}
/* Defined in TS 102.223 Section 8.73 */
static void check_item_text_attribute_list(
const struct stk_item_text_attribute_list *command,
const struct stk_item_text_attribute_list *test)
{
g_assert(command->len == test->len);
g_assert(g_mem_equal(command->list, test->list, test->len));
}
/* Defined in TS 102.223 Section 8.80 */
static void check_frame_id(const struct stk_frame_id *command,
const struct stk_frame_id *test)
{
g_assert(command->has_id == test->has_id);
if (test->has_id)
g_assert(command->id == test->id);
}
struct display_text_test {
const unsigned char *pdu;
unsigned int pdu_len;
unsigned char qualifier;
const char *text;
struct stk_icon_id icon_id;
ofono_bool_t immediate_response;
struct stk_duration duration;
struct stk_text_attribute text_attr;
struct stk_frame_id frame_id;
};
unsigned char display_text_111[] = { 0xD0, 0x1A, 0x81, 0x03, 0x01, 0x21, 0x80,
0x82, 0x02, 0x81, 0x02, 0x8D, 0x0F,
0x04, 0x54, 0x6F, 0x6F, 0x6C, 0x6B,
0x69, 0x74, 0x20, 0x54, 0x65, 0x73,
0x74, 0x20, 0x31 };
unsigned char display_text_131[] = { 0xD0, 0x1A, 0x81, 0x03, 0x01, 0x21, 0x81,
0x82, 0x02, 0x81, 0x02, 0x8D, 0x0F,
0x04, 0x54, 0x6F, 0x6F, 0x6C, 0x6B,
0x69, 0x74, 0x20, 0x54, 0x65, 0x73,
0x74, 0x20, 0x32 };
unsigned char display_text_141[] = { 0xD0, 0x19, 0x81, 0x03, 0x01, 0x21, 0x80,
0x82, 0x02, 0x81, 0x02, 0x8D, 0x0E,
0x00, 0xD4, 0xF7, 0x9B, 0xBD, 0x4E,
0xD3, 0x41, 0xD4, 0xF2, 0x9C, 0x0E,
0x9A, 0x01 };
unsigned char display_text_151[] = { 0xD0, 0x1A, 0x81, 0x03, 0x01, 0x21, 0x00,
0x82, 0x02, 0x81, 0x02, 0x8D, 0x0F,
0x04, 0x54, 0x6F, 0x6F, 0x6C, 0x6B,
0x69, 0x74, 0x20, 0x54, 0x65, 0x73,
0x74, 0x20, 0x34 };
unsigned char display_text_161[] = { 0xD0, 0x81, 0xAD, 0x81, 0x03, 0x01, 0x21,
0x80, 0x82, 0x02, 0x81, 0x02, 0x8D,
0x81, 0xA1, 0x04, 0x54, 0x68, 0x69,
0x73, 0x20, 0x63, 0x6F, 0x6D, 0x6D,
0x61, 0x6E, 0x64, 0x20, 0x69, 0x6E,
0x73, 0x74, 0x72, 0x75, 0x63, 0x74,
0x73, 0x20, 0x74, 0x68, 0x65, 0x20,
0x4D, 0x45, 0x20, 0x74, 0x6F, 0x20,
0x64, 0x69, 0x73, 0x70, 0x6C, 0x61,
0x79, 0x20, 0x61, 0x20, 0x74, 0x65,
0x78, 0x74, 0x20, 0x6D, 0x65, 0x73,
0x73, 0x61, 0x67, 0x65, 0x2E, 0x20,
0x49, 0x74, 0x20, 0x61, 0x6C, 0x6C,
0x6F, 0x77, 0x73, 0x20, 0x74, 0x68,
0x65, 0x20, 0x53, 0x49, 0x4D, 0x20,
0x74, 0x6F, 0x20, 0x64, 0x65, 0x66,
0x69, 0x6E, 0x65, 0x20, 0x74, 0x68,
0x65, 0x20, 0x70, 0x72, 0x69, 0x6F,
0x72, 0x69, 0x74, 0x79, 0x20, 0x6F,
0x66, 0x20, 0x74, 0x68, 0x61, 0x74,
0x20, 0x6D, 0x65, 0x73, 0x73, 0x61,
0x67, 0x65, 0x2C, 0x20, 0x61, 0x6E,
0x64, 0x20, 0x74, 0x68, 0x65, 0x20,
0x74, 0x65, 0x78, 0x74, 0x20, 0x73,
0x74, 0x72, 0x69, 0x6E, 0x67, 0x20,
0x66, 0x6F, 0x72, 0x6D, 0x61, 0x74,
0x2E, 0x20, 0x54, 0x77, 0x6F, 0x20,
0x74, 0x79, 0x70, 0x65, 0x73, 0x20,
0x6F, 0x66, 0x20, 0x70, 0x72, 0x69,
0x6F };
unsigned char display_text_171[] = { 0xD0, 0x1A, 0x81, 0x03, 0x01, 0x21, 0x80,
0x82, 0x02, 0x81, 0x02, 0x8D, 0x0F,
0x04, 0x3C, 0x47, 0x4F, 0x2D, 0x42,
0x41, 0x43, 0x4B, 0x57, 0x41, 0x52,
0x44, 0x53, 0x3E };
unsigned char display_text_511[] = { 0xD0, 0x1A, 0x81, 0x03, 0x01, 0x21, 0x80,
0x82, 0x02, 0x81, 0x02, 0x8D, 0x0B,
0x04, 0x42, 0x61, 0x73, 0x69, 0x63,
0x20, 0x49, 0x63, 0x6F, 0x6E, 0x9E,
0x02, 0x00, 0x01 };
unsigned char display_text_521[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x21, 0x80,
0x82, 0x02, 0x81, 0x02, 0x8D, 0x0C,
0x04, 0x43, 0x6F, 0x6C, 0x6F, 0x75,
0x72, 0x20, 0x49, 0x63, 0x6F, 0x6E,
0x9E, 0x02, 0x00, 0x02 };
unsigned char display_text_531[] = { 0xD0, 0x1A, 0x81, 0x03, 0x01, 0x21, 0x80,
0x82, 0x02, 0x81, 0x02, 0x8D, 0x0B,
0x04, 0x42, 0x61, 0x73, 0x69, 0x63,
0x20, 0x49, 0x63, 0x6F, 0x6E, 0x9E,
0x02, 0x01, 0x01 };
unsigned char display_text_611[] = { 0xD0, 0x24, 0x81, 0x03, 0x01, 0x21, 0x80,
0x82, 0x02, 0x81, 0x02, 0x8D, 0x19,
0x08, 0x04, 0x17, 0x04, 0x14, 0x04,
0x20, 0x04, 0x10, 0x04, 0x12, 0x04,
0x21, 0x04, 0x22, 0x04, 0x12, 0x04,
0x23, 0x04, 0x19, 0x04, 0x22, 0x04,
0x15 };
unsigned char display_text_711[] = { 0xD0, 0x19, 0x81, 0x03, 0x01, 0x21, 0x80,
0x82, 0x02, 0x81, 0x02, 0x8D, 0x0A,
0x04, 0x31, 0x30, 0x20, 0x53, 0x65,
0x63, 0x6F, 0x6E, 0x64, 0x84, 0x02,
0x01, 0x0A };
unsigned char display_text_911[] = { 0xD0, 0x10, 0x81, 0x03, 0x01, 0x21, 0x80,
0x82, 0x02, 0x81, 0x02, 0x8D, 0x05,
0x08, 0x4F, 0x60, 0x59, 0x7D };
unsigned char display_text_1011[] = { 0xD0, 0x12, 0x81, 0x03, 0x01, 0x21, 0x80,
0x82, 0x02, 0x81, 0x02, 0x8D, 0x07,
0x08, 0x00, 0x38, 0x00, 0x30, 0x30,
0xEB };
static struct display_text_test display_text_data_111 = {
.pdu = display_text_111,
.pdu_len = sizeof(display_text_111),
.qualifier = 0x80,
.text = "Toolkit Test 1"
};
static struct display_text_test display_text_data_131 = {
.pdu = display_text_131,
.pdu_len = sizeof(display_text_131),
.qualifier = 0x81,
.text = "Toolkit Test 2"
};
static struct display_text_test display_text_data_141 = {
.pdu = display_text_141,
.pdu_len = sizeof(display_text_141),
.qualifier = 0x80,
.text = "Toolkit Test 3"
};
static struct display_text_test display_text_data_151 = {
.pdu = display_text_151,
.pdu_len = sizeof(display_text_151),
.qualifier = 0x00,
.text = "Toolkit Test 4"
};
static struct display_text_test display_text_data_161 = {
.pdu = display_text_161,
.pdu_len = sizeof(display_text_161),
.qualifier = 0x80,
.text = "This command instructs the ME to display a text message. "
"It allows the SIM to define the priority of that "
"message, and the text string format. Two types of "
"prio"
};
static struct display_text_test display_text_data_171 = {
.pdu = display_text_171,
.pdu_len = sizeof(display_text_171),
.qualifier = 0x80,
.text = "<GO-BACKWARDS>"
};
static struct display_text_test display_text_data_511 = {
.pdu = display_text_511,
.pdu_len = sizeof(display_text_511),
.qualifier = 0x80,
.text = "Basic Icon",
.icon_id = {
.qualifier = STK_ICON_QUALIFIER_TYPE_SELF_EXPLANATORY,
.id = 0x01
}
};
static struct display_text_test display_text_data_521 = {
.pdu = display_text_521,
.pdu_len = sizeof(display_text_521),
.qualifier = 0x80,
.text = "Colour Icon",
.icon_id = {
.qualifier = STK_ICON_QUALIFIER_TYPE_SELF_EXPLANATORY,
.id = 0x02
}
};
static struct display_text_test display_text_data_531 = {
.pdu = display_text_531,
.pdu_len = sizeof(display_text_531),
.qualifier = 0x80,
.text = "Basic Icon",
.icon_id = {
.qualifier = STK_ICON_QUALIFIER_TYPE_NON_SELF_EXPLANATORY,
.id = 0x01
}
};
static struct display_text_test display_text_data_611 = {
.pdu = display_text_611,
.pdu_len = sizeof(display_text_611),
.qualifier = 0x80,
.text = "ЗДРАВСТВУЙТЕ"
};
static struct display_text_test display_text_data_711 = {
.pdu = display_text_711,
.pdu_len = sizeof(display_text_711),
.qualifier = 0x80,
.text = "10 Second",
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 10,
}
};
static struct display_text_test display_text_data_911 = {
.pdu = display_text_911,
.pdu_len = sizeof(display_text_911),
.qualifier = 0x80,
.text = "你好"
};
static struct display_text_test display_text_data_1011 = {
.pdu = display_text_1011,
.pdu_len = sizeof(display_text_1011),
.qualifier = 0x80,
.text = "80ル"
};
/* Defined in TS 102.384 Section 27.22.4.1 */
static void test_display_text(gconstpointer data)
{
const struct display_text_test *test = data;
struct stk_command *command;
command = stk_command_new_from_pdu(test->pdu, test->pdu_len);
g_assert(command);
g_assert(command->number == 1);
g_assert(command->type == STK_COMMAND_TYPE_DISPLAY_TEXT);
g_assert(command->qualifier == test->qualifier);
g_assert(command->src == STK_DEVICE_IDENTITY_TYPE_UICC);
g_assert(command->dst == STK_DEVICE_IDENTITY_TYPE_DISPLAY);
g_assert(command->display_text.text);
check_text(command->display_text.text, test->text);
check_icon_id(&command->display_text.icon_id, &test->icon_id);
check_imm_resp(command->display_text.immediate_response,
test->immediate_response);
check_duration(&command->display_text.duration, &test->duration);
check_text_attr(&command->display_text.text_attr,
&test->text_attr);
check_frame_id(&command->display_text.frame_id, &test->frame_id);
stk_command_free(command);
}
struct get_inkey_test {
const unsigned char *pdu;
unsigned int pdu_len;
unsigned char qualifier;
char *text;
struct stk_icon_id icon_id;
struct stk_duration duration;
struct stk_text_attribute text_attr;
struct stk_frame_id frame_id;
};
static unsigned char get_inkey_111[] = { 0xD0, 0x15, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x2B, 0x22 };
static unsigned char get_inkey_121[] = { 0xD0, 0x14, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x09, 0x00, 0x45, 0x37,
0xBD, 0x2C, 0x07, 0x89, 0x60,
0x22 };
static unsigned char get_inkey_131[] = { 0xD0, 0x1A, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0F, 0x04, 0x3C, 0x47,
0x4F, 0x2D, 0x42, 0x41, 0x43,
0x4B, 0x57, 0x41, 0x52, 0x44,
0x53, 0x3E };
static unsigned char get_inkey_141[] = { 0xD0, 0x13, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x08, 0x04, 0x3C, 0x41,
0x42, 0x4F, 0x52, 0x54, 0x3E };
static unsigned char get_inkey_151[] = { 0xD0, 0x15, 0x81, 0x03, 0x01, 0x22,
0x01, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x71, 0x22 };
static unsigned char get_inkey_161[] = { 0xD0, 0x81, 0xAD, 0x81, 0x03, 0x01,
0x22, 0x01, 0x82, 0x02, 0x81,
0x82, 0x8D, 0x81, 0xA1, 0x04,
0x45, 0x6E, 0x74, 0x65, 0x72,
0x20, 0x22, 0x78, 0x22, 0x2E,
0x20, 0x54, 0x68, 0x69, 0x73,
0x20, 0x63, 0x6F, 0x6D, 0x6D,
0x61, 0x6E, 0x64, 0x20, 0x69,
0x6E, 0x73, 0x74, 0x72, 0x75,
0x63, 0x74, 0x73, 0x20, 0x74,
0x68, 0x65, 0x20, 0x4D, 0x45,
0x20, 0x74, 0x6F, 0x20, 0x64,
0x69, 0x73, 0x70, 0x6C, 0x61,
0x79, 0x20, 0x74, 0x65, 0x78,
0x74, 0x2C, 0x20, 0x61, 0x6E,
0x64, 0x20, 0x74, 0x6F, 0x20,
0x65, 0x78, 0x70, 0x65, 0x63,
0x74, 0x20, 0x74, 0x68, 0x65,
0x20, 0x75, 0x73, 0x65, 0x72,
0x20, 0x74, 0x6F, 0x20, 0x65,
0x6E, 0x74, 0x65, 0x72, 0x20,
0x61, 0x20, 0x73, 0x69, 0x6E,
0x67, 0x6C, 0x65, 0x20, 0x63,
0x68, 0x61, 0x72, 0x61, 0x63,
0x74, 0x65, 0x72, 0x2E, 0x20,
0x41, 0x6E, 0x79, 0x20, 0x72,
0x65, 0x73, 0x70, 0x6F, 0x6E,
0x73, 0x65, 0x20, 0x65, 0x6E,
0x74, 0x65, 0x72, 0x65, 0x64,
0x20, 0x62, 0x79, 0x20, 0x74,
0x68, 0x65, 0x20, 0x75, 0x73,
0x65, 0x72, 0x20, 0x73, 0x68,
0x61, 0x6C, 0x6C, 0x20, 0x62,
0x65, 0x20, 0x70, 0x61, 0x73,
0x73, 0x65, 0x64, 0x20, 0x74 };
static unsigned char get_inkey_211[] = { 0xD0, 0x16, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0B, 0x04, 0x3C, 0x54,
0x49, 0x4D, 0x45, 0x2D, 0x4F,
0x55, 0x54, 0x3E };
static unsigned char get_inkey_311[] = { 0xD0, 0x24, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x19, 0x08, 0x04, 0x17,
0x04, 0x14, 0x04, 0x20, 0x04,
0x10, 0x04, 0x12, 0x04, 0x21,
0x04, 0x22, 0x04, 0x12, 0x04,
0x23, 0x04, 0x19, 0x04, 0x22,
0x04, 0x15 };
static unsigned char get_inkey_321[] = { 0xD0, 0x81, 0x99, 0x81, 0x03, 0x01,
0x22, 0x00, 0x82, 0x02, 0x81,
0x82, 0x8D, 0x81, 0x8D, 0x08,
0x04, 0x17, 0x04, 0x14, 0x04,
0x20, 0x04, 0x10, 0x04, 0x12,
0x04, 0x21, 0x04, 0x22, 0x04,
0x12, 0x04, 0x23, 0x04, 0x19,
0x04, 0x22, 0x04, 0x15, 0x04,
0x17, 0x04, 0x14, 0x04, 0x20,
0x04, 0x10, 0x04, 0x12, 0x04,
0x21, 0x04, 0x22, 0x04, 0x12,
0x04, 0x23, 0x04, 0x19, 0x04,
0x22, 0x04, 0x15, 0x04, 0x17,
0x04, 0x14, 0x04, 0x20, 0x04,
0x10, 0x04, 0x12, 0x04, 0x21,
0x04, 0x22, 0x04, 0x12, 0x04,
0x23, 0x04, 0x19, 0x04, 0x22,
0x04, 0x15, 0x04, 0x17, 0x04,
0x14, 0x04, 0x20, 0x04, 0x10,
0x04, 0x12, 0x04, 0x21, 0x04,
0x22, 0x04, 0x12, 0x04, 0x23,
0x04, 0x19, 0x04, 0x22, 0x04,
0x15, 0x04, 0x17, 0x04, 0x14,
0x04, 0x20, 0x04, 0x10, 0x04,
0x12, 0x04, 0x21, 0x04, 0x22,
0x04, 0x12, 0x04, 0x23, 0x04,
0x19, 0x04, 0x22, 0x04, 0x15,
0x04, 0x17, 0x04, 0x14, 0x04,
0x20, 0x04, 0x10, 0x04, 0x12,
0x04, 0x21, 0x04, 0x22, 0x04,
0x12, 0x04, 0x23, 0x04, 0x19 };
static unsigned char get_inkey_411[] = { 0xD0, 0x11, 0x81, 0x03, 0x01, 0x22,
0x03, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x06, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72 };
static unsigned char get_inkey_511[] = { 0xD0, 0x15, 0x81, 0x03, 0x01, 0x22,
0x04, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x59,
0x45, 0x53 };
static unsigned char get_inkey_512[] = { 0xD0, 0x14, 0x81, 0x03, 0x01, 0x22,
0x04, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x09, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x4E,
0x4F };
static unsigned char get_inkey_611[] = { 0xD0, 0x19, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x3C, 0x4E,
0x4F, 0x2D, 0x49, 0x43, 0x4F,
0x4E, 0x3E, 0x1E, 0x02, 0x00,
0x01 };
static unsigned char get_inkey_621[] = { 0xD0, 0x1C, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0D, 0x04, 0x3C, 0x42,
0x41, 0x53, 0x49, 0x43, 0x2D,
0x49, 0x43, 0x4F, 0x4E, 0x3E,
0x1E, 0x02, 0x01, 0x01 };
static unsigned char get_inkey_631[] = { 0xD0, 0x19, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x3C, 0x4E,
0x4F, 0x2D, 0x49, 0x43, 0x4F,
0x4E, 0x3E, 0x1E, 0x02, 0x00,
0x02 };
static unsigned char get_inkey_641[] = { 0xD0, 0x1D, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0E, 0x04, 0x3C, 0x43,
0x4F, 0x4C, 0x4F, 0x55, 0x52,
0x2D, 0x49, 0x43, 0x4F, 0x4E,
0x3E, 0x1E, 0x02, 0x01, 0x02 };
static unsigned char get_inkey_711[] = { 0xD0, 0x15, 0x81, 0x03, 0x01, 0x22,
0x80, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x2B, 0x22 };
static unsigned char get_inkey_712[] = { 0xD0, 0x15, 0x81, 0x03, 0x01, 0x22,
0x80, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x2B, 0x22 };
static unsigned char get_inkey_811[] = { 0xD0, 0x19, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x2B, 0x22, 0x84, 0x02, 0x01,
0x0A };
static unsigned char get_inkey_911[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x2B, 0x22, 0xD0, 0x04, 0x00,
0x09, 0x00, 0xB4 };
static unsigned char get_inkey_912[] = { 0xD0, 0x15, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x23, 0x22 };
static unsigned char get_inkey_921[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x2B, 0x22, 0xD0, 0x04, 0x00,
0x09, 0x01, 0xB4 };
static unsigned char get_inkey_922[] = { 0xD0, 0x15, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x23, 0x22 };
static unsigned char get_inkey_931[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x2B, 0x22, 0xD0, 0x04, 0x00,
0x09, 0x02, 0xB4 };
static unsigned char get_inkey_932[] = { 0xD0, 0x15, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x23, 0x22 };
static unsigned char get_inkey_941[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x2B, 0x22, 0xD0, 0x04, 0x00,
0x09, 0x04, 0xB4 };
static unsigned char get_inkey_942[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x23, 0x22, 0xD0, 0x04, 0x00,
0x09, 0x00, 0xB4 };
static unsigned char get_inkey_943[] = { 0xD0, 0x15, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x23, 0x22 };
static unsigned char get_inkey_951[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x2B, 0x22, 0xD0, 0x04, 0x00,
0x09, 0x08, 0xB4 };
static unsigned char get_inkey_952[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x23, 0x22, 0xD0, 0x04, 0x00,
0x09, 0x00, 0xB4 };
static unsigned char get_inkey_953[] = { 0xD0, 0x15, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x23, 0x22 };
static unsigned char get_inkey_961[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x2B, 0x22, 0xD0, 0x04, 0x00,
0x09, 0x10, 0xB4 };
static unsigned char get_inkey_962[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x23, 0x22, 0xD0, 0x04, 0x00,
0x09, 0x00, 0xB4 };
static unsigned char get_inkey_963[] = { 0xD0, 0x15, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x23, 0x22 };
static unsigned char get_inkey_971[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x2B, 0x22, 0xD0, 0x04, 0x00,
0x09, 0x20, 0xB4 };
static unsigned char get_inkey_972[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x23, 0x22, 0xD0, 0x04, 0x00,
0x09, 0x00, 0xB4 };
static unsigned char get_inkey_973[] = { 0xD0, 0x15, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x23, 0x22 };
static unsigned char get_inkey_981[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x2B, 0x22, 0xD0, 0x04, 0x00,
0x09, 0x40, 0xB4 };
static unsigned char get_inkey_982[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x23, 0x22, 0xD0, 0x04, 0x00,
0x09, 0x00, 0xB4 };
static unsigned char get_inkey_983[] = { 0xD0, 0x15, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x23, 0x22 };
static unsigned char get_inkey_991[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x2B, 0x22, 0xD0, 0x04, 0x00,
0x09, 0x80, 0xB4 };
static unsigned char get_inkey_992a[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x23, 0x22, 0xD0, 0x04, 0x00,
0x09, 0x00, 0xB4 };
static unsigned char get_inkey_992b[] = { 0xD0, 0x15, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x23, 0x22 };
static unsigned char get_inkey_993[] = { 0xD0, 0x15, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x23, 0x22 };
static unsigned char get_inkey_9101[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x2B, 0x22, 0xD0, 0x04, 0x00,
0x09, 0x00, 0xB4 };
static unsigned char get_inkey_9102[] = { 0xD0, 0x15, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x22,
0x23, 0x22 };
static unsigned char get_inkey_1011[] = { 0xD0, 0x10, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x05, 0x08, 0x4F, 0x60,
0x59, 0x7D };
static unsigned char get_inkey_1021[] = { 0xD0, 0x81, 0x99, 0x81, 0x03, 0x01,
0x22, 0x00, 0x82, 0x02, 0x81,
0x82, 0x8D, 0x81, 0x8D, 0x08,
0x4F, 0x60, 0x59, 0x7D, 0x4F,
0x60, 0x59, 0x7D, 0x4F, 0x60,
0x59, 0x7D, 0x4F, 0x60, 0x59,
0x7D, 0x4F, 0x60, 0x59, 0x7D,
0x4F, 0x60, 0x59, 0x7D, 0x4F,
0x60, 0x59, 0x7D, 0x4F, 0x60,
0x59, 0x7D, 0x4F, 0x60, 0x59,
0x7D, 0x4F, 0x60, 0x59, 0x7D,
0x4F, 0x60, 0x59, 0x7D, 0x4F,
0x60, 0x59, 0x7D, 0x4F, 0x60,
0x59, 0x7D, 0x4F, 0x60, 0x59,
0x7D, 0x4F, 0x60, 0x59, 0x7D,
0x4F, 0x60, 0x59, 0x7D, 0x4F,
0x60, 0x59, 0x7D, 0x4F, 0x60,
0x59, 0x7D, 0x4F, 0x60, 0x59,
0x7D, 0x4F, 0x60, 0x59, 0x7D,
0x4F, 0x60, 0x59, 0x7D, 0x4F,
0x60, 0x59, 0x7D, 0x4F, 0x60,
0x59, 0x7D, 0x4F, 0x60, 0x59,
0x7D, 0x4F, 0x60, 0x59, 0x7D,
0x4F, 0x60, 0x59, 0x7D, 0x4F,
0x60, 0x59, 0x7D, 0x4F, 0x60,
0x59, 0x7D, 0x4F, 0x60, 0x59,
0x7D, 0x4F, 0x60, 0x59, 0x7D,
0x4F, 0x60, 0x59, 0x7D, 0x4F,
0x60, 0x59, 0x7D, 0x4F, 0x60,
0x59, 0x7D, 0x4F, 0x60, 0x59,
0x7D, 0x4F, 0x60, 0x59, 0x7D };
static unsigned char get_inkey_1111[] = { 0xD0, 0x11, 0x81, 0x03, 0x01, 0x22,
0x03, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x06, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72 };
static unsigned char get_inkey_1211[] = { 0xD0, 0x0E, 0x81, 0x03, 0x01, 0x22,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x03, 0x08, 0x30, 0xEB };
static unsigned char get_inkey_1221[] = { 0xD0, 0x81, 0x99, 0x81, 0x03, 0x01,
0x22, 0x00, 0x82, 0x02, 0x81,
0x82, 0x8D, 0x81, 0x8D, 0x08,
0x30, 0xEB, 0x30, 0xEB, 0x30,
0xEB, 0x30, 0xEB, 0x30, 0xEB,
0x30, 0xEB, 0x30, 0xEB, 0x30,
0xEB, 0x30, 0xEB, 0x30, 0xEB,
0x30, 0xEB, 0x30, 0xEB, 0x30,
0xEB, 0x30, 0xEB, 0x30, 0xEB,
0x30, 0xEB, 0x30, 0xEB, 0x30,
0xEB, 0x30, 0xEB, 0x30, 0xEB,
0x30, 0xEB, 0x30, 0xEB, 0x30,
0xEB, 0x30, 0xEB, 0x30, 0xEB,
0x30, 0xEB, 0x30, 0xEB, 0x30,
0xEB, 0x30, 0xEB, 0x30, 0xEB,
0x30, 0xEB, 0x30, 0xEB, 0x30,
0xEB, 0x30, 0xEB, 0x30, 0xEB,
0x30, 0xEB, 0x30, 0xEB, 0x30,
0xEB, 0x30, 0xEB, 0x30, 0xEB,
0x30, 0xEB, 0x30, 0xEB, 0x30,
0xEB, 0x30, 0xEB, 0x30, 0xEB,
0x30, 0xEB, 0x30, 0xEB, 0x30,
0xEB, 0x30, 0xEB, 0x30, 0xEB,
0x30, 0xEB, 0x30, 0xEB, 0x30,
0xEB, 0x30, 0xEB, 0x30, 0xEB,
0x30, 0xEB, 0x30, 0xEB, 0x30,
0xEB, 0x30, 0xEB, 0x30, 0xEB,
0x30, 0xEB, 0x30, 0xEB, 0x30,
0xEB, 0x30, 0xEB, 0x30, 0xEB,
0x30, 0xEB, 0x30, 0xEB, 0x30,
0xEB, 0x30, 0xEB, 0x30, 0xEB };
static unsigned char get_inkey_1311[] = { 0xD0, 0x11, 0x81, 0x03, 0x01, 0x22,
0x03, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x06, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72 };
static struct get_inkey_test get_inkey_data_111 = {
.pdu = get_inkey_111,
.pdu_len = sizeof(get_inkey_111),
.qualifier = 0x00,
.text = "Enter \"+\""
};
static struct get_inkey_test get_inkey_data_121 = {
.pdu = get_inkey_121,
.pdu_len = sizeof(get_inkey_121),
.qualifier = 0x00,
.text = "Enter \"0\""
};
static struct get_inkey_test get_inkey_data_131 = {
.pdu = get_inkey_131,
.pdu_len = sizeof(get_inkey_131),
.qualifier = 0x00,
.text = "<GO-BACKWARDS>"
};
static struct get_inkey_test get_inkey_data_141 = {
.pdu = get_inkey_141,
.pdu_len = sizeof(get_inkey_141),
.qualifier = 0x00,
.text = "<ABORT>"
};
static struct get_inkey_test get_inkey_data_151 = {
.pdu = get_inkey_151,
.pdu_len = sizeof(get_inkey_151),
.qualifier = 0x01,
.text = "Enter \"q\""
};
static struct get_inkey_test get_inkey_data_161 = {
.pdu = get_inkey_161,
.pdu_len = sizeof(get_inkey_161),
.qualifier = 0x01,
.text = "Enter \"x\". This command instructs the ME to display text, "
"and to expect the user to enter a single character. Any "
"response entered by the user shall be passed t"
};
static struct get_inkey_test get_inkey_data_211 = {
.pdu = get_inkey_211,
.pdu_len = sizeof(get_inkey_211),
.qualifier = 0x00,
.text = "<TIME-OUT>"
};
static struct get_inkey_test get_inkey_data_311 = {
.pdu = get_inkey_311,
.pdu_len = sizeof(get_inkey_311),
.qualifier = 0x00,
.text = "ЗДРАВСТВУЙТЕ"
};
static struct get_inkey_test get_inkey_data_321 = {
.pdu = get_inkey_321,
.pdu_len = sizeof(get_inkey_321),
.qualifier = 0x00,
.text = "ЗДРАВСТВУЙТЕЗДРАВСТВУЙТЕ"
"ЗДРАВСТВУЙТЕЗДРАВСТВУЙТЕ"
"ЗДРАВСТВУЙТЕЗДРАВСТВУЙ"
};
static struct get_inkey_test get_inkey_data_411 = {
.pdu = get_inkey_411,
.pdu_len = sizeof(get_inkey_411),
.qualifier = 0x03,
.text = "Enter"
};
static struct get_inkey_test get_inkey_data_511 = {
.pdu = get_inkey_511,
.pdu_len = sizeof(get_inkey_511),
.qualifier = 0x04,
.text = "Enter YES"
};
static struct get_inkey_test get_inkey_data_512 = {
.pdu = get_inkey_512,
.pdu_len = sizeof(get_inkey_512),
.qualifier = 0x04,
.text = "Enter NO"
};
static struct get_inkey_test get_inkey_data_611 = {
.pdu = get_inkey_611,
.pdu_len = sizeof(get_inkey_611),
.qualifier = 0x00,
.text = "<NO-ICON>",
.icon_id = {
.qualifier = STK_ICON_QUALIFIER_TYPE_SELF_EXPLANATORY,
.id = 0x01
}
};
static struct get_inkey_test get_inkey_data_621 = {
.pdu = get_inkey_621,
.pdu_len = sizeof(get_inkey_621),
.qualifier = 0x00,
.text = "<BASIC-ICON>",
.icon_id = {
.qualifier = STK_ICON_QUALIFIER_TYPE_NON_SELF_EXPLANATORY,
.id = 0x01
}
};
static struct get_inkey_test get_inkey_data_631 = {
.pdu = get_inkey_631,
.pdu_len = sizeof(get_inkey_631),
.qualifier = 0x00,
.text = "<NO-ICON>",
.icon_id = {
.qualifier = STK_ICON_QUALIFIER_TYPE_SELF_EXPLANATORY,
.id = 0x02
}
};
static struct get_inkey_test get_inkey_data_641 = {
.pdu = get_inkey_641,
.pdu_len = sizeof(get_inkey_641),
.qualifier = 0x00,
.text = "<COLOUR-ICON>",
.icon_id = {
.qualifier = STK_ICON_QUALIFIER_TYPE_NON_SELF_EXPLANATORY,
.id = 0x02
}
};
static struct get_inkey_test get_inkey_data_711 = {
.pdu = get_inkey_711,
.pdu_len = sizeof(get_inkey_711),
.qualifier = 0x80,
.text = "Enter \"+\""
};
static struct get_inkey_test get_inkey_data_712 = {
.pdu = get_inkey_712,
.pdu_len = sizeof(get_inkey_712),
.qualifier = 0x80,
.text = "Enter \"+\""
};
static struct get_inkey_test get_inkey_data_811 = {
.pdu = get_inkey_811,
.pdu_len = sizeof(get_inkey_811),
.qualifier = 0x00,
.text = "Enter \"+\"",
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 10
}
};
static struct get_inkey_test get_inkey_data_911 = {
.pdu = get_inkey_911,
.pdu_len = sizeof(get_inkey_911),
.qualifier = 0x00,
.text = "Enter \"+\"",
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x09, 0x00, 0xB4 }
}
};
static struct get_inkey_test get_inkey_data_912 = {
.pdu = get_inkey_912,
.pdu_len = sizeof(get_inkey_912),
.qualifier = 0x00,
.text = "Enter \"#\""
};
static struct get_inkey_test get_inkey_data_921 = {
.pdu = get_inkey_921,
.pdu_len = sizeof(get_inkey_921),
.qualifier = 0x00,
.text = "Enter \"+\"",
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x09, 0x01, 0xB4 }
}
};
static struct get_inkey_test get_inkey_data_922 = {
.pdu = get_inkey_922,
.pdu_len = sizeof(get_inkey_922),
.qualifier = 0x00,
.text = "Enter \"#\""
};
static struct get_inkey_test get_inkey_data_931 = {
.pdu = get_inkey_931,
.pdu_len = sizeof(get_inkey_931),
.qualifier = 0x00,
.text = "Enter \"+\"",
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x09, 0x02, 0xB4 }
}
};
static struct get_inkey_test get_inkey_data_932 = {
.pdu = get_inkey_932,
.pdu_len = sizeof(get_inkey_932),
.qualifier = 0x00,
.text = "Enter \"#\""
};
static struct get_inkey_test get_inkey_data_941 = {
.pdu = get_inkey_941,
.pdu_len = sizeof(get_inkey_941),
.qualifier = 0x00,
.text = "Enter \"+\"",
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x09, 0x04, 0xB4 }
}
};
static struct get_inkey_test get_inkey_data_942 = {
.pdu = get_inkey_942,
.pdu_len = sizeof(get_inkey_942),
.qualifier = 0x00,
.text = "Enter \"#\"",
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x09, 0x00, 0xB4 }
}
};
static struct get_inkey_test get_inkey_data_943 = {
.pdu = get_inkey_943,
.pdu_len = sizeof(get_inkey_943),
.qualifier = 0x00,
.text = "Enter \"#\""
};
static struct get_inkey_test get_inkey_data_951 = {
.pdu = get_inkey_951,
.pdu_len = sizeof(get_inkey_951),
.qualifier = 0x00,
.text = "Enter \"+\"",
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x09, 0x08, 0xB4 }
}
};
static struct get_inkey_test get_inkey_data_952 = {
.pdu = get_inkey_952,
.pdu_len = sizeof(get_inkey_952),
.qualifier = 0x00,
.text = "Enter \"#\"",
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x09, 0x00, 0xB4 }
}
};
static struct get_inkey_test get_inkey_data_953 = {
.pdu = get_inkey_953,
.pdu_len = sizeof(get_inkey_953),
.qualifier = 0x00,
.text = "Enter \"#\""
};
static struct get_inkey_test get_inkey_data_961 = {
.pdu = get_inkey_961,
.pdu_len = sizeof(get_inkey_961),
.qualifier = 0x00,
.text = "Enter \"+\"",
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x09, 0x10, 0xB4 }
}
};
static struct get_inkey_test get_inkey_data_962 = {
.pdu = get_inkey_962,
.pdu_len = sizeof(get_inkey_962),
.qualifier = 0x00,
.text = "Enter \"#\"",
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x09, 0x00, 0xB4 }
}
};
static struct get_inkey_test get_inkey_data_963 = {
.pdu = get_inkey_963,
.pdu_len = sizeof(get_inkey_963),
.qualifier = 0x00,
.text = "Enter \"#\""
};
static struct get_inkey_test get_inkey_data_971 = {
.pdu = get_inkey_971,
.pdu_len = sizeof(get_inkey_971),
.qualifier = 0x00,
.text = "Enter \"+\"",
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x09, 0x20, 0xB4 }
}
};
static struct get_inkey_test get_inkey_data_972 = {
.pdu = get_inkey_972,
.pdu_len = sizeof(get_inkey_972),
.qualifier = 0x00,
.text = "Enter \"#\"",
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x09, 0x00, 0xB4 }
}
};
static struct get_inkey_test get_inkey_data_973 = {
.pdu = get_inkey_973,
.pdu_len = sizeof(get_inkey_973),
.qualifier = 0x00,
.text = "Enter \"#\""
};
static struct get_inkey_test get_inkey_data_981 = {
.pdu = get_inkey_981,
.pdu_len = sizeof(get_inkey_981),
.qualifier = 0x00,
.text = "Enter \"+\"",
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x09, 0x40, 0xB4 }
}
};
static struct get_inkey_test get_inkey_data_982 = {
.pdu = get_inkey_982,
.pdu_len = sizeof(get_inkey_982),
.qualifier = 0x00,
.text = "Enter \"#\"",
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x09, 0x00, 0xB4 }
}
};
static struct get_inkey_test get_inkey_data_983 = {
.pdu = get_inkey_983,
.pdu_len = sizeof(get_inkey_983),
.qualifier = 0x00,
.text = "Enter \"#\""
};
static struct get_inkey_test get_inkey_data_991 = {
.pdu = get_inkey_991,
.pdu_len = sizeof(get_inkey_991),
.qualifier = 0x00,
.text = "Enter \"+\"",
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x09, 0x80, 0xB4 }
}
};
static struct get_inkey_test get_inkey_data_992a = {
.pdu = get_inkey_992a,
.pdu_len = sizeof(get_inkey_992a),
.qualifier = 0x00,
.text = "Enter \"#\"",
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x09, 0x00, 0xB4 }
}
};
static struct get_inkey_test get_inkey_data_992b = {
.pdu = get_inkey_992b,
.pdu_len = sizeof(get_inkey_992b),
.qualifier = 0x00,
.text = "Enter \"#\""
};
static struct get_inkey_test get_inkey_data_993 = {
.pdu = get_inkey_993,
.pdu_len = sizeof(get_inkey_993),
.qualifier = 0x00,
.text = "Enter \"#\""
};
static struct get_inkey_test get_inkey_data_9101 = {
.pdu = get_inkey_9101,
.pdu_len = sizeof(get_inkey_9101),
.qualifier = 0x00,
.text = "Enter \"+\"",
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x09, 0x00, 0xB4 }
}
};
static struct get_inkey_test get_inkey_data_9102 = {
.pdu = get_inkey_9102,
.pdu_len = sizeof(get_inkey_9102),
.qualifier = 0x00,
.text = "Enter \"#\""
};
static struct get_inkey_test get_inkey_data_1011 = {
.pdu = get_inkey_1011,
.pdu_len = sizeof(get_inkey_1011),
.qualifier = 0x00,
.text = "你好"
};
static struct get_inkey_test get_inkey_data_1021 = {
.pdu = get_inkey_1021,
.pdu_len = sizeof(get_inkey_1021),
.qualifier = 0x00,
.text = "你好你好你好你好你好你好你好你好你好你好"
"你好你好你好你好你好你好你好你好你好你好"
"你好你好你好你好你好你好你好你好你好你好"
"你好你好你好你好你好"
};
static struct get_inkey_test get_inkey_data_1111 = {
.pdu = get_inkey_1111,
.pdu_len = sizeof(get_inkey_1111),
.qualifier = 0x03,
.text = "Enter"
};
static struct get_inkey_test get_inkey_data_1211 = {
.pdu = get_inkey_1211,
.pdu_len = sizeof(get_inkey_1211),
.qualifier = 0x00,
.text = ""
};
static struct get_inkey_test get_inkey_data_1221 = {
.pdu = get_inkey_1221,
.pdu_len = sizeof(get_inkey_1221),
.qualifier = 0x00,
.text = "ルルルルルルルルルルルルルルルルルルルル"
"ルルルルルルルルルルルルルルルルルルルル"
"ルルルルルルルルルルルルルルルルルルルル"
"ルルルルルルルルルル"
};
static struct get_inkey_test get_inkey_data_1311 = {
.pdu = get_inkey_1311,
.pdu_len = sizeof(get_inkey_1311),
.qualifier = 0x03,
.text = "Enter"
};
/* Defined in TS 102.384 Section 27.22.4.2 */
static void test_get_inkey(gconstpointer data)
{
const struct get_inkey_test *test = data;
struct stk_command *command;
command = stk_command_new_from_pdu(test->pdu, test->pdu_len);
g_assert(command);
g_assert(command->number == 1);
g_assert(command->type == STK_COMMAND_TYPE_GET_INKEY);
g_assert(command->qualifier == test->qualifier);
g_assert(command->src == STK_DEVICE_IDENTITY_TYPE_UICC);
g_assert(command->dst == STK_DEVICE_IDENTITY_TYPE_TERMINAL);
g_assert(command->get_inkey.text);
check_text(command->get_inkey.text, test->text);
check_icon_id(&command->get_inkey.icon_id, &test->icon_id);
check_duration(&command->get_inkey.duration, &test->duration);
check_text_attr(&command->get_inkey.text_attr,
&test->text_attr);
check_frame_id(&command->get_inkey.frame_id, &test->frame_id);
stk_command_free(command);
}
struct get_input_test {
const unsigned char *pdu;
unsigned int pdu_len;
unsigned char qualifier;
char *text;
struct stk_response_length resp_len;
char *default_text;
struct stk_icon_id icon_id;
struct stk_text_attribute text_attr;
struct stk_frame_id frame_id;
};
static unsigned char get_input_111[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x31,
0x32, 0x33, 0x34, 0x35, 0x91,
0x02, 0x05, 0x05 };
static unsigned char get_input_121[] = { 0xD0, 0x1A, 0x81, 0x03, 0x01, 0x23,
0x08, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0B, 0x00, 0x45, 0x37,
0xBD, 0x2C, 0x07, 0xD9, 0x6E,
0xAA, 0xD1, 0x0A, 0x91, 0x02,
0x05, 0x05 };
static unsigned char get_input_131[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x23,
0x01, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x41,
0x62, 0x43, 0x64, 0x45, 0x91,
0x02, 0x05, 0x05 };
static unsigned char get_input_141[] = { 0xD0, 0x27, 0x81, 0x03, 0x01, 0x23,
0x04, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x18, 0x04, 0x50, 0x61,
0x73, 0x73, 0x77, 0x6F, 0x72,
0x64, 0x20, 0x31, 0x3C, 0x53,
0x45, 0x4E, 0x44, 0x3E, 0x32,
0x33, 0x34, 0x35, 0x36, 0x37,
0x38, 0x91, 0x02, 0x04, 0x08 };
static unsigned char get_input_151[] = { 0xD0, 0x24, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x15, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x31,
0x2E, 0x2E, 0x39, 0x2C, 0x30,
0x2E, 0x2E, 0x39, 0x2C, 0x30,
0x28, 0x31, 0x29, 0x91, 0x02,
0x01, 0x14 };
static unsigned char get_input_161[] = { 0xD0, 0x1E, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0F, 0x04, 0x3C, 0x47,
0x4F, 0x2D, 0x42, 0x41, 0x43,
0x4B, 0x57, 0x41, 0x52, 0x44,
0x53, 0x3E, 0x91, 0x02, 0x00,
0x08 };
static unsigned char get_input_171[] = { 0xD0, 0x17, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x08, 0x04, 0x3C, 0x41,
0x42, 0x4F, 0x52, 0x54, 0x3E,
0x91, 0x02, 0x00, 0x08 };
static unsigned char get_input_181[] = { 0xD0, 0x81, 0xB1, 0x81, 0x03, 0x01,
0x23, 0x00, 0x82, 0x02, 0x81,
0x82, 0x8D, 0x81, 0xA1, 0x04,
0x2A, 0x2A, 0x2A, 0x31, 0x31,
0x31, 0x31, 0x31, 0x31, 0x31,
0x31, 0x31, 0x31, 0x23, 0x23,
0x23, 0x2A, 0x2A, 0x2A, 0x32,
0x32, 0x32, 0x32, 0x32, 0x32,
0x32, 0x32, 0x32, 0x32, 0x23,
0x23, 0x23, 0x2A, 0x2A, 0x2A,
0x33, 0x33, 0x33, 0x33, 0x33,
0x33, 0x33, 0x33, 0x33, 0x33,
0x23, 0x23, 0x23, 0x2A, 0x2A,
0x2A, 0x34, 0x34, 0x34, 0x34,
0x34, 0x34, 0x34, 0x34, 0x34,
0x34, 0x23, 0x23, 0x23, 0x2A,
0x2A, 0x2A, 0x35, 0x35, 0x35,
0x35, 0x35, 0x35, 0x35, 0x35,
0x35, 0x35, 0x23, 0x23, 0x23,
0x2A, 0x2A, 0x2A, 0x36, 0x36,
0x36, 0x36, 0x36, 0x36, 0x36,
0x36, 0x36, 0x36, 0x23, 0x23,
0x23, 0x2A, 0x2A, 0x2A, 0x37,
0x37, 0x37, 0x37, 0x37, 0x37,
0x37, 0x37, 0x37, 0x37, 0x23,
0x23, 0x23, 0x2A, 0x2A, 0x2A,
0x38, 0x38, 0x38, 0x38, 0x38,
0x38, 0x38, 0x38, 0x38, 0x38,
0x23, 0x23, 0x23, 0x2A, 0x2A,
0x2A, 0x39, 0x39, 0x39, 0x39,
0x39, 0x39, 0x39, 0x39, 0x39,
0x39, 0x23, 0x23, 0x23, 0x2A,
0x2A, 0x2A, 0x30, 0x30, 0x30,
0x30, 0x30, 0x30, 0x30, 0x30,
0x30, 0x30, 0x23, 0x23, 0x23,
0x91, 0x02, 0xA0, 0xA0 };
static unsigned char get_input_191[] = { 0xD0, 0x16, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x07, 0x04, 0x3C, 0x53,
0x45, 0x4E, 0x44, 0x3E, 0x91,
0x02, 0x00, 0x01 };
static unsigned char get_input_1101[] = { 0xD0, 0x0F, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x00, 0x91, 0x02, 0x01,
0x05 };
static unsigned char get_input_211[] = { 0xD0, 0x1A, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0B, 0x04, 0x3C, 0x54,
0x49, 0x4D, 0x45, 0x2D, 0x4F,
0x55, 0x54, 0x3E, 0x91, 0x02,
0x00, 0x0A };
static unsigned char get_input_311[] = { 0xD0, 0x28, 0x81, 0x03, 0x01, 0x23,
0x01, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x19, 0x08, 0x04, 0x17,
0x04, 0x14, 0x04, 0x20, 0x04,
0x10, 0x04, 0x12, 0x04, 0x21,
0x04, 0x22, 0x04, 0x12, 0x04,
0x23, 0x04, 0x19, 0x04, 0x22,
0x04, 0x15, 0x91, 0x02, 0x05,
0x05 };
static unsigned char get_input_321[] = { 0xD0, 0x81, 0x9D, 0x81, 0x03, 0x01,
0x23, 0x01, 0x82, 0x02, 0x81,
0x82, 0x8D, 0x81, 0x8D, 0x08,
0x04, 0x17, 0x04, 0x14, 0x04,
0x20, 0x04, 0x10, 0x04, 0x12,
0x04, 0x21, 0x04, 0x22, 0x04,
0x12, 0x04, 0x23, 0x04, 0x19,
0x04, 0x22, 0x04, 0x15, 0x04,
0x17, 0x04, 0x14, 0x04, 0x20,
0x04, 0x10, 0x04, 0x12, 0x04,
0x21, 0x04, 0x22, 0x04, 0x12,
0x04, 0x23, 0x04, 0x19, 0x04,
0x22, 0x04, 0x15, 0x04, 0x17,
0x04, 0x14, 0x04, 0x20, 0x04,
0x10, 0x04, 0x12, 0x04, 0x21,
0x04, 0x22, 0x04, 0x12, 0x04,
0x23, 0x04, 0x19, 0x04, 0x22,
0x04, 0x15, 0x04, 0x17, 0x04,
0x14, 0x04, 0x20, 0x04, 0x10,
0x04, 0x12, 0x04, 0x21, 0x04,
0x22, 0x04, 0x12, 0x04, 0x23,
0x04, 0x19, 0x04, 0x22, 0x04,
0x15, 0x04, 0x17, 0x04, 0x14,
0x04, 0x20, 0x04, 0x10, 0x04,
0x12, 0x04, 0x21, 0x04, 0x22,
0x04, 0x12, 0x04, 0x23, 0x04,
0x19, 0x04, 0x22, 0x04, 0x15,
0x04, 0x17, 0x04, 0x14, 0x04,
0x20, 0x04, 0x10, 0x04, 0x12,
0x04, 0x21, 0x04, 0x22, 0x04,
0x12, 0x04, 0x23, 0x04, 0x19,
0x91, 0x02, 0x05, 0x05 };
static unsigned char get_input_411[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x23,
0x03, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x48,
0x65, 0x6C, 0x6C, 0x6F, 0x91,
0x02, 0x0C, 0x0C };
static unsigned char get_input_421[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x23,
0x03, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x48,
0x65, 0x6C, 0x6C, 0x6F, 0x91,
0x02, 0x05, 0xFF };
static unsigned char get_input_511[] = { 0xD0, 0x23, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x31,
0x32, 0x33, 0x34, 0x35, 0x91,
0x02, 0x05, 0x05, 0x17, 0x06,
0x04, 0x31, 0x32, 0x33, 0x34,
0x35 };
static unsigned char get_input_521[] = { 0xD0, 0x81, 0xBA, 0x81, 0x03, 0x01,
0x23, 0x00, 0x82, 0x02, 0x81,
0x82, 0x8D, 0x07, 0x04, 0x45,
0x6E, 0x74, 0x65, 0x72, 0x3A,
0x91, 0x02, 0xA0, 0xA0, 0x17,
0x81, 0xA1, 0x04, 0x2A, 0x2A,
0x2A, 0x31, 0x31, 0x31, 0x31,
0x31, 0x31, 0x31, 0x31, 0x31,
0x31, 0x23, 0x23, 0x23, 0x2A,
0x2A, 0x2A, 0x32, 0x32, 0x32,
0x32, 0x32, 0x32, 0x32, 0x32,
0x32, 0x32, 0x23, 0x23, 0x23,
0x2A, 0x2A, 0x2A, 0x33, 0x33,
0x33, 0x33, 0x33, 0x33, 0x33,
0x33, 0x33, 0x33, 0x23, 0x23,
0x23, 0x2A, 0x2A, 0x2A, 0x34,
0x34, 0x34, 0x34, 0x34, 0x34,
0x34, 0x34, 0x34, 0x34, 0x23,
0x23, 0x23, 0x2A, 0x2A, 0x2A,
0x35, 0x35, 0x35, 0x35, 0x35,
0x35, 0x35, 0x35, 0x35, 0x35,
0x23, 0x23, 0x23, 0x2A, 0x2A,
0x2A, 0x36, 0x36, 0x36, 0x36,
0x36, 0x36, 0x36, 0x36, 0x36,
0x36, 0x23, 0x23, 0x23, 0x2A,
0x2A, 0x2A, 0x37, 0x37, 0x37,
0x37, 0x37, 0x37, 0x37, 0x37,
0x37, 0x37, 0x23, 0x23, 0x23,
0x2A, 0x2A, 0x2A, 0x38, 0x38,
0x38, 0x38, 0x38, 0x38, 0x38,
0x38, 0x38, 0x38, 0x23, 0x23,
0x23, 0x2A, 0x2A, 0x2A, 0x39,
0x39, 0x39, 0x39, 0x39, 0x39,
0x39, 0x39, 0x39, 0x39, 0x23,
0x23, 0x23, 0x2A, 0x2A, 0x2A,
0x30, 0x30, 0x30, 0x30, 0x30,
0x30, 0x30, 0x30, 0x30, 0x30,
0x23, 0x23, 0x23 };
static unsigned char get_input_611[] = { 0xD0, 0x1D, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x3C, 0x4E,
0x4F, 0x2D, 0x49, 0x43, 0x4F,
0x4E, 0x3E, 0x91, 0x02, 0x00,
0x0A, 0x1E, 0x02, 0x00, 0x01 };
static unsigned char get_input_621[] = { 0xD0, 0x20, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0D, 0x04, 0x3C, 0x42,
0x41, 0x53, 0x49, 0x43, 0x2D,
0x49, 0x43, 0x4F, 0x4E, 0x3E,
0x91, 0x02, 0x00, 0x0A, 0x1E,
0x02, 0x01, 0x01 };
static unsigned char get_input_631[] = { 0xD0, 0x1D, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0A, 0x04, 0x3C, 0x4E,
0x4F, 0x2D, 0x49, 0x43, 0x4F,
0x4E, 0x3E, 0x91, 0x02, 0x00,
0x0A, 0x1E, 0x02, 0x00, 0x02 };
static unsigned char get_input_641[] = { 0xD0, 0x21, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0E, 0x04, 0x3C, 0x43,
0x4F, 0x4C, 0x4F, 0x55, 0x52,
0x2D, 0x49, 0x43, 0x4F, 0x4E,
0x3E, 0x91, 0x02, 0x00, 0x0A,
0x1E, 0x02, 0x01, 0x02 };
static unsigned char get_input_711[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x23,
0x80, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x31,
0x32, 0x33, 0x34, 0x35, 0x91,
0x02, 0x05, 0x05 };
static unsigned char get_input_811[] = { 0xD0, 0x21, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x31,
0x32, 0x33, 0x34, 0x35, 0x91,
0x02, 0x05, 0x05, 0xD0, 0x04,
0x00, 0x0B, 0x00, 0xB4 };
static unsigned char get_input_812[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x32,
0x32, 0x32, 0x32, 0x32, 0x91,
0x02, 0x05, 0x05 };
static unsigned char get_input_821[] = { 0xD0, 0x21, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x31,
0x32, 0x33, 0x34, 0x35, 0x91,
0x02, 0x05, 0x05, 0xD0, 0x04,
0x00, 0x0B, 0x01, 0xB4 };
static unsigned char get_input_822[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x32,
0x32, 0x32, 0x32, 0x32, 0x91,
0x02, 0x05, 0x05 };
static unsigned char get_input_831[] = { 0xD0, 0x21, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x31,
0x32, 0x33, 0x34, 0x35, 0x91,
0x02, 0x05, 0x05, 0xD0, 0x04,
0x00, 0x0B, 0x02, 0xB4 };
static unsigned char get_input_832[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x32,
0x32, 0x32, 0x32, 0x32, 0x91,
0x02, 0x05, 0x05 };
static unsigned char get_input_841[] = { 0xD0, 0x21, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x31,
0x32, 0x33, 0x34, 0x35, 0x91,
0x02, 0x05, 0x05, 0xD0, 0x04,
0x00, 0x0B, 0x04, 0xB4 };
static unsigned char get_input_842[] = { 0xD0, 0x21, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x32,
0x32, 0x32, 0x32, 0x32, 0x91,
0x02, 0x05, 0x05, 0xD0, 0x04,
0x00, 0x0B, 0x00, 0xB4 };
static unsigned char get_input_843[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x33,
0x33, 0x33, 0x33, 0x33, 0x91,
0x02, 0x05, 0x05 };
static unsigned char get_input_851[] = { 0xD0, 0x21, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x31,
0x32, 0x33, 0x34, 0x35, 0x91,
0x02, 0x05, 0x05, 0xD0, 0x04,
0x00, 0x0B, 0x08, 0xB4 };
static unsigned char get_input_852[] = { 0xD0, 0x21, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x32,
0x32, 0x32, 0x32, 0x32, 0x91,
0x02, 0x05, 0x05, 0xD0, 0x04,
0x00, 0x0B, 0x00, 0xB4 };
static unsigned char get_input_853[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x33,
0x33, 0x33, 0x33, 0x33, 0x91,
0x02, 0x05, 0x05 };
static unsigned char get_input_861[] = { 0xD0, 0x21, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x31,
0x32, 0x33, 0x34, 0x35, 0x91,
0x02, 0x05, 0x05, 0xD0, 0x04,
0x00, 0x0B, 0x10, 0xB4 };
static unsigned char get_input_862[] = { 0xD0, 0x21, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x32,
0x32, 0x32, 0x32, 0x32, 0x91,
0x02, 0x05, 0x05, 0xD0, 0x04,
0x00, 0x0B, 0x00, 0xB4 };
static unsigned char get_input_863[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x33,
0x33, 0x33, 0x33, 0x33, 0x91,
0x02, 0x05, 0x05 };
static unsigned char get_input_871[] = { 0xD0, 0x21, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x31,
0x32, 0x33, 0x34, 0x35, 0x91,
0x02, 0x05, 0x05, 0xD0, 0x04,
0x00, 0x0B, 0x20, 0xB4 };
static unsigned char get_input_872[] = { 0xD0, 0x21, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x32,
0x32, 0x32, 0x32, 0x32, 0x91,
0x02, 0x05, 0x05, 0xD0, 0x04,
0x00, 0x0B, 0x00, 0xB4 };
static unsigned char get_input_873[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x33,
0x33, 0x33, 0x33, 0x33, 0x91,
0x02, 0x05, 0x05 };
static unsigned char get_input_881[] = { 0xD0, 0x21, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x31,
0x32, 0x33, 0x34, 0x35, 0x91,
0x02, 0x05, 0x05, 0xD0, 0x04,
0x00, 0x0B, 0x40, 0xB4 };
static unsigned char get_input_882[] = { 0xD0, 0x21, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x32,
0x32, 0x32, 0x32, 0x32, 0x91,
0x02, 0x05, 0x05, 0xD0, 0x04,
0x00, 0x0B, 0x00, 0xB4 };
static unsigned char get_input_883[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x33,
0x33, 0x33, 0x33, 0x33, 0x91,
0x02, 0x05, 0x05 };
static unsigned char get_input_891[] = { 0xD0, 0x21, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x31,
0x32, 0x33, 0x34, 0x35, 0x91,
0x02, 0x05, 0x05, 0xD0, 0x04,
0x00, 0x0B, 0x80, 0xB4 };
static unsigned char get_input_892[] = { 0xD0, 0x21, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x32,
0x32, 0x32, 0x32, 0x32, 0x91,
0x02, 0x05, 0x05, 0xD0, 0x04,
0x00, 0x0B, 0x00, 0xB4 };
static unsigned char get_input_893[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x33,
0x33, 0x33, 0x33, 0x33, 0x91,
0x02, 0x05, 0x05 };
static unsigned char get_input_8101[] = { 0xD0, 0x21, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x31,
0x32, 0x33, 0x34, 0x35, 0x91,
0x02, 0x05, 0x05, 0xD0, 0x04,
0x00, 0x0B, 0x00, 0xB4 };
static unsigned char get_input_8102[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x23,
0x00, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x32,
0x32, 0x32, 0x32, 0x32, 0x91,
0x02, 0x05, 0x05 };
static unsigned char get_input_911[] = { 0xD0, 0x14, 0x81, 0x03, 0x01, 0x23,
0x01, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x05, 0x08, 0x4F, 0x60,
0x59, 0x7D, 0x91, 0x02, 0x05,
0x05 };
static unsigned char get_input_921[] = { 0xD0, 0x81, 0x9D, 0x81, 0x03, 0x01,
0x23, 0x01, 0x82, 0x02, 0x81,
0x82, 0x8D, 0x81, 0x8D, 0x08,
0x4F, 0x60, 0x59, 0x7D, 0x4F,
0x60, 0x59, 0x7D, 0x4F, 0x60,
0x59, 0x7D, 0x4F, 0x60, 0x59,
0x7D, 0x4F, 0x60, 0x59, 0x7D,
0x4F, 0x60, 0x59, 0x7D, 0x4F,
0x60, 0x59, 0x7D, 0x4F, 0x60,
0x59, 0x7D, 0x4F, 0x60, 0x59,
0x7D, 0x4F, 0x60, 0x59, 0x7D,
0x4F, 0x60, 0x59, 0x7D, 0x4F,
0x60, 0x59, 0x7D, 0x4F, 0x60,
0x59, 0x7D, 0x4F, 0x60, 0x59,
0x7D, 0x4F, 0x60, 0x59, 0x7D,
0x4F, 0x60, 0x59, 0x7D, 0x4F,
0x60, 0x59, 0x7D, 0x4F, 0x60,
0x59, 0x7D, 0x4F, 0x60, 0x59,
0x7D, 0x4F, 0x60, 0x59, 0x7D,
0x4F, 0x60, 0x59, 0x7D, 0x4F,
0x60, 0x59, 0x7D, 0x4F, 0x60,
0x59, 0x7D, 0x4F, 0x60, 0x59,
0x7D, 0x4F, 0x60, 0x59, 0x7D,
0x4F, 0x60, 0x59, 0x7D, 0x4F,
0x60, 0x59, 0x7D, 0x4F, 0x60,
0x59, 0x7D, 0x4F, 0x60, 0x59,
0x7D, 0x4F, 0x60, 0x59, 0x7D,
0x4F, 0x60, 0x59, 0x7D, 0x4F,
0x60, 0x59, 0x7D, 0x4F, 0x60,
0x59, 0x7D, 0x4F, 0x60, 0x59,
0x7D, 0x4F, 0x60, 0x59, 0x7D,
0x91, 0x02, 0x05, 0x05 };
static unsigned char get_input_1011[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x23,
0x03, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x48,
0x65, 0x6C, 0x6C, 0x6F, 0x91,
0x02, 0x02, 0x02 };
static unsigned char get_input_1021[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x23,
0x03, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x48,
0x65, 0x6C, 0x6C, 0x6F, 0x91,
0x02, 0x05, 0xFF };
static unsigned char get_input_1111[] = { 0xD0, 0x12, 0x81, 0x03, 0x01, 0x23,
0x01, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x03, 0x08, 0x30, 0xEB,
0x91, 0x02, 0x05, 0x05 };
static unsigned char get_input_1121[] = { 0xD0, 0x81, 0x9D, 0x81, 0x03, 0x01,
0x23, 0x01, 0x82, 0x02, 0x81,
0x82, 0x8D, 0x81, 0x8D, 0x08,
0x30, 0xEB, 0x30, 0xEB, 0x30,
0xEB, 0x30, 0xEB, 0x30, 0xEB,
0x30, 0xEB, 0x30, 0xEB, 0x30,
0xEB, 0x30, 0xEB, 0x30, 0xEB,
0x30, 0xEB, 0x30, 0xEB, 0x30,
0xEB, 0x30, 0xEB, 0x30, 0xEB,
0x30, 0xEB, 0x30, 0xEB, 0x30,
0xEB, 0x30, 0xEB, 0x30, 0xEB,
0x30, 0xEB, 0x30, 0xEB, 0x30,
0xEB, 0x30, 0xEB, 0x30, 0xEB,
0x30, 0xEB, 0x30, 0xEB, 0x30,
0xEB, 0x30, 0xEB, 0x30, 0xEB,
0x30, 0xEB, 0x30, 0xEB, 0x30,
0xEB, 0x30, 0xEB, 0x30, 0xEB,
0x30, 0xEB, 0x30, 0xEB, 0x30,
0xEB, 0x30, 0xEB, 0x30, 0xEB,
0x30, 0xEB, 0x30, 0xEB, 0x30,
0xEB, 0x30, 0xEB, 0x30, 0xEB,
0x30, 0xEB, 0x30, 0xEB, 0x30,
0xEB, 0x30, 0xEB, 0x30, 0xEB,
0x30, 0xEB, 0x30, 0xEB, 0x30,
0xEB, 0x30, 0xEB, 0x30, 0xEB,
0x30, 0xEB, 0x30, 0xEB, 0x30,
0xEB, 0x30, 0xEB, 0x30, 0xEB,
0x30, 0xEB, 0x30, 0xEB, 0x30,
0xEB, 0x30, 0xEB, 0x30, 0xEB,
0x30, 0xEB, 0x30, 0xEB, 0x30,
0xEB, 0x30, 0xEB, 0x30, 0xEB,
0x91, 0x02, 0x05, 0x05 };
static unsigned char get_input_1211[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x23,
0x03, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x48,
0x65, 0x6C, 0x6C, 0x6F, 0x91,
0x02, 0x02, 0x02 };
static unsigned char get_input_1221[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x23,
0x03, 0x82, 0x02, 0x81, 0x82,
0x8D, 0x0C, 0x04, 0x45, 0x6E,
0x74, 0x65, 0x72, 0x20, 0x48,
0x65, 0x6C, 0x6C, 0x6F, 0x91,
0x02, 0x05, 0xFF };
static struct get_input_test get_input_data_111 = {
.pdu = get_input_111,
.pdu_len = sizeof(get_input_111),
.qualifier = 0x00,
.text = "Enter 12345",
.resp_len = {
.min = 5,
.max = 5
}
};
static struct get_input_test get_input_data_121 = {
.pdu = get_input_121,
.pdu_len = sizeof(get_input_121),
.qualifier = 0x08,
.text = "Enter 67*#+",
.resp_len = {
.min = 5,
.max = 5
}
};
static struct get_input_test get_input_data_131 = {
.pdu = get_input_131,
.pdu_len = sizeof(get_input_131),
.qualifier = 0x01,
.text = "Enter AbCdE",
.resp_len = {
.min = 5,
.max = 5
}
};
static struct get_input_test get_input_data_141 = {
.pdu = get_input_141,
.pdu_len = sizeof(get_input_141),
.qualifier = 0x04,
.text = "Password 1<SEND>2345678",
.resp_len = {
.min = 4,
.max = 8
}
};
static struct get_input_test get_input_data_151 = {
.pdu = get_input_151,
.pdu_len = sizeof(get_input_151),
.qualifier = 0x00,
.text = "Enter 1..9,0..9,0(1)",
.resp_len = {
.min = 1,
.max = 20
}
};
static struct get_input_test get_input_data_161 = {
.pdu = get_input_161,
.pdu_len = sizeof(get_input_161),
.qualifier = 0x00,
.text = "<GO-BACKWARDS>",
.resp_len = {
.min = 0,
.max = 8
}
};
static struct get_input_test get_input_data_171 = {
.pdu = get_input_171,
.pdu_len = sizeof(get_input_171),
.qualifier = 0x00,
.text = "<ABORT>",
.resp_len = {
.min = 0,
.max = 8
}
};
static struct get_input_test get_input_data_181 = {
.pdu = get_input_181,
.pdu_len = sizeof(get_input_181),
.qualifier = 0x00,
.text = "***1111111111###***2222222222###***3333333333###"
"***4444444444###***5555555555###***6666666666###"
"***7777777777###***8888888888###***9999999999###"
"***0000000000###",
.resp_len = {
.min = 160,
.max = 160
}
};
static struct get_input_test get_input_data_191 = {
.pdu = get_input_191,
.pdu_len = sizeof(get_input_191),
.qualifier = 0x00,
.text = "<SEND>",
.resp_len = {
.min = 0,
.max = 1
}
};
static struct get_input_test get_input_data_1101 = {
.pdu = get_input_1101,
.pdu_len = sizeof(get_input_1101),
.qualifier = 0x00,
.text = NULL,
.resp_len = {
.min = 1,
.max = 5
}
};
static struct get_input_test get_input_data_211 = {
.pdu = get_input_211,
.pdu_len = sizeof(get_input_211),
.qualifier = 0x00,
.text = "<TIME-OUT>",
.resp_len = {
.min = 0,
.max = 10
}
};
static struct get_input_test get_input_data_311 = {
.pdu = get_input_311,
.pdu_len = sizeof(get_input_311),
.qualifier = 0x01,
.text = "ЗДРАВСТВУЙТЕ",
.resp_len = {
.min = 5,
.max = 5
}
};
static struct get_input_test get_input_data_321 = {
.pdu = get_input_321,
.pdu_len = sizeof(get_input_321),
.qualifier = 0x01,
.text = "ЗДРАВСТВУЙТЕЗДРАВСТВУЙТЕ"
"ЗДРАВСТВУЙТЕЗДРАВСТВУЙТЕ"
"ЗДРАВСТВУЙТЕЗДРАВСТВУЙ",
.resp_len = {
.min = 5,
.max = 5
}
};
static struct get_input_test get_input_data_411 = {
.pdu = get_input_411,
.pdu_len = sizeof(get_input_411),
.qualifier = 0x03,
.text = "Enter Hello",
.resp_len = {
.min = 12,
.max = 12
}
};
static struct get_input_test get_input_data_421 = {
.pdu = get_input_421,
.pdu_len = sizeof(get_input_421),
.qualifier = 0x03,
.text = "Enter Hello",
.resp_len = {
.min = 5,
.max = 0xFF
}
};
static struct get_input_test get_input_data_511 = {
.pdu = get_input_511,
.pdu_len = sizeof(get_input_511),
.qualifier = 0x00,
.text = "Enter 12345",
.resp_len = {
.min = 5,
.max = 5
},
.default_text = "12345"
};
static struct get_input_test get_input_data_521 = {
.pdu = get_input_521,
.pdu_len = sizeof(get_input_521),
.qualifier = 0x00,
.text = "Enter:",
.resp_len = {
.min = 160,
.max = 160
},
.default_text = "***1111111111###***2222222222###***3333333333###"
"***4444444444###***5555555555###***6666666666###"
"***7777777777###***8888888888###***9999999999###"
"***0000000000###"
};
static struct get_input_test get_input_data_611 = {
.pdu = get_input_611,
.pdu_len = sizeof(get_input_611),
.qualifier = 0x00,
.text = "<NO-ICON>",
.resp_len = {
.min = 0,
.max = 10
},
.icon_id = {
.qualifier = STK_ICON_QUALIFIER_TYPE_SELF_EXPLANATORY,
.id = 0x01
}
};
static struct get_input_test get_input_data_621 = {
.pdu = get_input_621,
.pdu_len = sizeof(get_input_621),
.qualifier = 0x00,
.text = "<BASIC-ICON>",
.resp_len = {
.min = 0,
.max = 10
},
.icon_id = {
.qualifier = STK_ICON_QUALIFIER_TYPE_NON_SELF_EXPLANATORY,
.id = 0x01
}
};
static struct get_input_test get_input_data_631 = {
.pdu = get_input_631,
.pdu_len = sizeof(get_input_631),
.qualifier = 0x00,
.text = "<NO-ICON>",
.resp_len = {
.min = 0,
.max = 10
},
.icon_id = {
.qualifier = STK_ICON_QUALIFIER_TYPE_SELF_EXPLANATORY,
.id = 0x02
}
};
static struct get_input_test get_input_data_641 = {
.pdu = get_input_641,
.pdu_len = sizeof(get_input_641),
.qualifier = 0x00,
.text = "<COLOUR-ICON>",
.resp_len = {
.min = 0,
.max = 10
},
.icon_id = {
.qualifier = STK_ICON_QUALIFIER_TYPE_NON_SELF_EXPLANATORY,
.id = 0x02
}
};
static struct get_input_test get_input_data_711 = {
.pdu = get_input_711,
.pdu_len = sizeof(get_input_711),
.qualifier = 0x80,
.text = "Enter 12345",
.resp_len = {
.min = 5,
.max = 5
}
};
static struct get_input_test get_input_data_811 = {
.pdu = get_input_811,
.pdu_len = sizeof(get_input_811),
.qualifier = 0x00,
.text = "Enter 12345",
.resp_len = {
.min = 5,
.max = 5
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x0B, 0x00, 0xB4 }
}
};
static struct get_input_test get_input_data_812 = {
.pdu = get_input_812,
.pdu_len = sizeof(get_input_812),
.qualifier = 0x00,
.text = "Enter 22222",
.resp_len = {
.min = 5,
.max = 5
}
};
static struct get_input_test get_input_data_821 = {
.pdu = get_input_821,
.pdu_len = sizeof(get_input_821),
.qualifier = 0x00,
.text = "Enter 12345",
.resp_len = {
.min = 5,
.max = 5
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x0B, 0x01, 0xB4 }
}
};
static struct get_input_test get_input_data_822 = {
.pdu = get_input_822,
.pdu_len = sizeof(get_input_822),
.qualifier = 0x00,
.text = "Enter 22222",
.resp_len = {
.min = 5,
.max = 5
}
};
static struct get_input_test get_input_data_831 = {
.pdu = get_input_831,
.pdu_len = sizeof(get_input_831),
.qualifier = 0x00,
.text = "Enter 12345",
.resp_len = {
.min = 5,
.max = 5
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x0B, 0x02, 0xB4 }
}
};
static struct get_input_test get_input_data_832 = {
.pdu = get_input_832,
.pdu_len = sizeof(get_input_832),
.qualifier = 0x00,
.text = "Enter 22222",
.resp_len = {
.min = 5,
.max = 5
}
};
static struct get_input_test get_input_data_841 = {
.pdu = get_input_841,
.pdu_len = sizeof(get_input_841),
.qualifier = 0x00,
.text = "Enter 12345",
.resp_len = {
.min = 5,
.max = 5
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x0B, 0x04, 0xB4 }
}
};
static struct get_input_test get_input_data_842 = {
.pdu = get_input_842,
.pdu_len = sizeof(get_input_842),
.qualifier = 0x00,
.text = "Enter 22222",
.resp_len = {
.min = 5,
.max = 5
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x0B, 0x00, 0xB4 }
}
};
static struct get_input_test get_input_data_843 = {
.pdu = get_input_843,
.pdu_len = sizeof(get_input_843),
.qualifier = 0x00,
.text = "Enter 33333",
.resp_len = {
.min = 5,
.max = 5
}
};
static struct get_input_test get_input_data_851 = {
.pdu = get_input_851,
.pdu_len = sizeof(get_input_851),
.qualifier = 0x00,
.text = "Enter 12345",
.resp_len = {
.min = 5,
.max = 5
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x0B, 0x08, 0xB4 }
}
};
static struct get_input_test get_input_data_852 = {
.pdu = get_input_852,
.pdu_len = sizeof(get_input_852),
.qualifier = 0x00,
.text = "Enter 22222",
.resp_len = {
.min = 5,
.max = 5
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x0B, 0x00, 0xB4 }
}
};
static struct get_input_test get_input_data_853 = {
.pdu = get_input_853,
.pdu_len = sizeof(get_input_853),
.qualifier = 0x00,
.text = "Enter 33333",
.resp_len = {
.min = 5,
.max = 5
}
};
static struct get_input_test get_input_data_861 = {
.pdu = get_input_861,
.pdu_len = sizeof(get_input_861),
.qualifier = 0x00,
.text = "Enter 12345",
.resp_len = {
.min = 5,
.max = 5
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x0B, 0x10, 0xB4 }
}
};
static struct get_input_test get_input_data_862 = {
.pdu = get_input_862,
.pdu_len = sizeof(get_input_862),
.qualifier = 0x00,
.text = "Enter 22222",
.resp_len = {
.min = 5,
.max = 5
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x0B, 0x00, 0xB4 }
}
};
static struct get_input_test get_input_data_863 = {
.pdu = get_input_863,
.pdu_len = sizeof(get_input_863),
.qualifier = 0x00,
.text = "Enter 33333",
.resp_len = {
.min = 5,
.max = 5
}
};
static struct get_input_test get_input_data_871 = {
.pdu = get_input_871,
.pdu_len = sizeof(get_input_871),
.qualifier = 0x00,
.text = "Enter 12345",
.resp_len = {
.min = 5,
.max = 5
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x0B, 0x20, 0xB4 }
}
};
static struct get_input_test get_input_data_872 = {
.pdu = get_input_872,
.pdu_len = sizeof(get_input_872),
.qualifier = 0x00,
.text = "Enter 22222",
.resp_len = {
.min = 5,
.max = 5
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x0B, 0x00, 0xB4 }
}
};
static struct get_input_test get_input_data_873 = {
.pdu = get_input_873,
.pdu_len = sizeof(get_input_873),
.qualifier = 0x00,
.text = "Enter 33333",
.resp_len = {
.min = 5,
.max = 5
}
};
static struct get_input_test get_input_data_881 = {
.pdu = get_input_881,
.pdu_len = sizeof(get_input_881),
.qualifier = 0x00,
.text = "Enter 12345",
.resp_len = {
.min = 5,
.max = 5
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x0B, 0x40, 0xB4 }
}
};
static struct get_input_test get_input_data_882 = {
.pdu = get_input_882,
.pdu_len = sizeof(get_input_882),
.qualifier = 0x00,
.text = "Enter 22222",
.resp_len = {
.min = 5,
.max = 5
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x0B, 0x00, 0xB4 }
}
};
static struct get_input_test get_input_data_883 = {
.pdu = get_input_883,
.pdu_len = sizeof(get_input_883),
.qualifier = 0x00,
.text = "Enter 33333",
.resp_len = {
.min = 5,
.max = 5
}
};
static struct get_input_test get_input_data_891 = {
.pdu = get_input_891,
.pdu_len = sizeof(get_input_891),
.qualifier = 0x00,
.text = "Enter 12345",
.resp_len = {
.min = 5,
.max = 5
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x0B, 0x80, 0xB4 }
}
};
static struct get_input_test get_input_data_892 = {
.pdu = get_input_892,
.pdu_len = sizeof(get_input_892),
.qualifier = 0x00,
.text = "Enter 22222",
.resp_len = {
.min = 5,
.max = 5
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x0B, 0x00, 0xB4 }
}
};
static struct get_input_test get_input_data_893 = {
.pdu = get_input_893,
.pdu_len = sizeof(get_input_893),
.qualifier = 0x00,
.text = "Enter 33333",
.resp_len = {
.min = 5,
.max = 5
}
};
static struct get_input_test get_input_data_8101 = {
.pdu = get_input_8101,
.pdu_len = sizeof(get_input_8101),
.qualifier = 0x00,
.text = "Enter 12345",
.resp_len = {
.min = 5,
.max = 5
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x0B, 0x00, 0xB4 }
}
};
static struct get_input_test get_input_data_8102 = {
.pdu = get_input_8102,
.pdu_len = sizeof(get_input_8102),
.qualifier = 0x00,
.text = "Enter 22222",
.resp_len = {
.min = 5,
.max = 5
}
};
static struct get_input_test get_input_data_911 = {
.pdu = get_input_911,
.pdu_len = sizeof(get_input_911),
.qualifier = 0x01,
.text = "你好",
.resp_len = {
.min = 5,
.max = 5
}
};
static struct get_input_test get_input_data_921 = {
.pdu = get_input_921,
.pdu_len = sizeof(get_input_921),
.qualifier = 0x01,
.text = "你好你好你好你好你好你好你好你好你好你好"
"你好你好你好你好你好你好你好你好你好你好"
"你好你好你好你好你好你好你好你好你好你好"
"你好你好你好你好你好",
.resp_len = {
.min = 5,
.max = 5
}
};
static struct get_input_test get_input_data_1011 = {
.pdu = get_input_1011,
.pdu_len = sizeof(get_input_1011),
.qualifier = 0x03,
.text = "Enter Hello",
.resp_len = {
.min = 2,
.max = 2
}
};
static struct get_input_test get_input_data_1021 = {
.pdu = get_input_1021,
.pdu_len = sizeof(get_input_1021),
.qualifier = 0x03,
.text = "Enter Hello",
.resp_len = {
.min = 5,
.max = 0xFF
}
};
static struct get_input_test get_input_data_1111 = {
.pdu = get_input_1111,
.pdu_len = sizeof(get_input_1111),
.qualifier = 0x01,
.text = "",
.resp_len = {
.min = 5,
.max = 5
}
};
static struct get_input_test get_input_data_1121 = {
.pdu = get_input_1121,
.pdu_len = sizeof(get_input_1121),
.qualifier = 0x01,
.text = "ルルルルルルルルルルルルルルルルルルルル"
"ルルルルルルルルルルルルルルルルルルルル"
"ルルルルルルルルルルルルルルルルルルルル"
"ルルルルルルルルルル",
.resp_len = {
.min = 5,
.max = 5
}
};
static struct get_input_test get_input_data_1211 = {
.pdu = get_input_1211,
.pdu_len = sizeof(get_input_1211),
.qualifier = 0x03,
.text = "Enter Hello",
.resp_len = {
.min = 2,
.max = 2
}
};
static struct get_input_test get_input_data_1221 = {
.pdu = get_input_1221,
.pdu_len = sizeof(get_input_1221),
.qualifier = 0x03,
.text = "Enter Hello",
.resp_len = {
.min = 5,
.max = 0xFF
}
};
/* Defined in TS 102.384 Section 27.22.4.3 */
static void test_get_input(gconstpointer data)
{
const struct get_input_test *test = data;
struct stk_command *command;
command = stk_command_new_from_pdu(test->pdu, test->pdu_len);
g_assert(command);
g_assert(command->number == 1);
g_assert(command->type == STK_COMMAND_TYPE_GET_INPUT);
g_assert(command->qualifier == test->qualifier);
g_assert(command->src == STK_DEVICE_IDENTITY_TYPE_UICC);
g_assert(command->dst == STK_DEVICE_IDENTITY_TYPE_TERMINAL);
if (test->text)
g_assert(command->get_input.text);
check_text(command->get_input.text, test->text);
check_response_length(&command->get_input.resp_len, &test->resp_len);
check_default_text(command->get_input.default_text, test->default_text);
check_icon_id(&command->get_input.icon_id, &test->icon_id);
check_text_attr(&command->get_input.text_attr,
&test->text_attr);
check_frame_id(&command->get_input.frame_id, &test->frame_id);
stk_command_free(command);
}
struct more_time_test {
const unsigned char *pdu;
unsigned int pdu_len;
unsigned char qualifier;
};
static unsigned char more_time_111[] = { 0xD0, 0x09, 0x81, 0x03, 0x01, 0x02,
0x00, 0x82, 0x02, 0x81, 0x82 };
static struct more_time_test more_time_data_111 = {
.pdu = more_time_111,
.pdu_len = sizeof(more_time_111),
.qualifier = 0x00,
};
/* Defined in TS 102.384 Section 27.22.4.4 */
static void test_more_time(gconstpointer data)
{
const struct get_input_test *test = data;
struct stk_command *command;
command = stk_command_new_from_pdu(test->pdu, test->pdu_len);
g_assert(command);
g_assert(command->number == 1);
g_assert(command->type == STK_COMMAND_TYPE_MORE_TIME);
g_assert(command->qualifier == test->qualifier);
g_assert(command->src == STK_DEVICE_IDENTITY_TYPE_UICC);
g_assert(command->dst == STK_DEVICE_IDENTITY_TYPE_TERMINAL);
stk_command_free(command);
}
struct play_tone_test {
const unsigned char *pdu;
unsigned int pdu_len;
unsigned char qualifier;
char *alpha_id;
unsigned char tone;
struct stk_duration duration;
struct stk_icon_id icon_id;
struct stk_text_attribute text_attr;
struct stk_frame_id frame_id;
};
static unsigned char play_tone_111[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x09, 0x44, 0x69, 0x61,
0x6C, 0x20, 0x54, 0x6F, 0x6E,
0x65, 0x8E, 0x01, 0x01, 0x84,
0x02, 0x01, 0x05 };
static unsigned char play_tone_112[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x09, 0x53, 0x75, 0x62,
0x2E, 0x20, 0x42, 0x75, 0x73,
0x79, 0x8E, 0x01, 0x02, 0x84,
0x02, 0x01, 0x05 };
static unsigned char play_tone_113[] = { 0xD0, 0x1C, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x0A, 0x43, 0x6F, 0x6E,
0x67, 0x65, 0x73, 0x74, 0x69,
0x6F, 0x6E, 0x8E, 0x01, 0x03,
0x84, 0x02, 0x01, 0x05 };
static unsigned char play_tone_114[] = { 0xD0, 0x18, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x06, 0x52, 0x50, 0x20,
0x41, 0x63, 0x6B, 0x8E, 0x01,
0x04, 0x84, 0x02, 0x01, 0x05 };
static unsigned char play_tone_115[] = { 0xD0, 0x17, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x05, 0x4E, 0x6F, 0x20,
0x52, 0x50, 0x8E, 0x01, 0x05,
0x84, 0x02, 0x01, 0x05 };
static unsigned char play_tone_116[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x09, 0x53, 0x70, 0x65,
0x63, 0x20, 0x49, 0x6E, 0x66,
0x6F, 0x8E, 0x01, 0x06, 0x84,
0x02, 0x01, 0x05 };
static unsigned char play_tone_117[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x09, 0x43, 0x61, 0x6C,
0x6C, 0x20, 0x57, 0x61, 0x69,
0x74, 0x8E, 0x01, 0x07, 0x84,
0x02, 0x01, 0x05 };
static unsigned char play_tone_118[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x09, 0x52, 0x69, 0x6E,
0x67, 0x20, 0x54, 0x6F, 0x6E,
0x65, 0x8E, 0x01, 0x08, 0x84,
0x02, 0x01, 0x05 };
static unsigned char play_tone_119[] = { 0xD0, 0x81, 0xFD, 0x81, 0x03, 0x01,
0x20, 0x00, 0x82, 0x02, 0x81,
0x03, 0x85, 0x81, 0xF1, 0x54,
0x68, 0x69, 0x73, 0x20, 0x63,
0x6F, 0x6D, 0x6D, 0x61, 0x6E,
0x64, 0x20, 0x69, 0x6E, 0x73,
0x74, 0x72, 0x75, 0x63, 0x74,
0x73, 0x20, 0x74, 0x68, 0x65,
0x20, 0x4D, 0x45, 0x20, 0x74,
0x6F, 0x20, 0x70, 0x6C, 0x61,
0x79, 0x20, 0x61, 0x6E, 0x20,
0x61, 0x75, 0x64, 0x69, 0x6F,
0x20, 0x74, 0x6F, 0x6E, 0x65,
0x2E, 0x20, 0x55, 0x70, 0x6F,
0x6E, 0x20, 0x72, 0x65, 0x63,
0x65, 0x69, 0x76, 0x69, 0x6E,
0x67, 0x20, 0x74, 0x68, 0x69,
0x73, 0x20, 0x63, 0x6F, 0x6D,
0x6D, 0x61, 0x6E, 0x64, 0x2C,
0x20, 0x74, 0x68, 0x65, 0x20,
0x4D, 0x45, 0x20, 0x73, 0x68,
0x61, 0x6C, 0x6C, 0x20, 0x63,
0x68, 0x65, 0x63, 0x6B, 0x20,
0x69, 0x66, 0x20, 0x69, 0x74,
0x20, 0x69, 0x73, 0x20, 0x63,
0x75, 0x72, 0x72, 0x65, 0x6E,
0x74, 0x6C, 0x79, 0x20, 0x69,
0x6E, 0x2C, 0x20, 0x6F, 0x72,
0x20, 0x69, 0x6E, 0x20, 0x74,
0x68, 0x65, 0x20, 0x70, 0x72,
0x6F, 0x63, 0x65, 0x73, 0x73,
0x20, 0x6F, 0x66, 0x20, 0x73,
0x65, 0x74, 0x74, 0x69, 0x6E,
0x67, 0x20, 0x75, 0x70, 0x20,
0x28, 0x53, 0x45, 0x54, 0x2D,
0x55, 0x50, 0x20, 0x6D, 0x65,
0x73, 0x73, 0x61, 0x67, 0x65,
0x20, 0x73, 0x65, 0x6E, 0x74,
0x20, 0x74, 0x6F, 0x20, 0x74,
0x68, 0x65, 0x20, 0x6E, 0x65,
0x74, 0x77, 0x6F, 0x72, 0x6B,
0x2C, 0x20, 0x73, 0x65, 0x65,
0x20, 0x47, 0x53, 0x4D, 0x22,
0x30, 0x34, 0x2E, 0x30, 0x38,
0x22, 0x28, 0x38, 0x29, 0x29,
0x2C, 0x20, 0x61, 0x20, 0x73,
0x70, 0x65, 0x65, 0x63, 0x68,
0x20, 0x63, 0x61, 0x6C, 0x6C,
0x2E, 0x20, 0x2D, 0x20, 0x49,
0x66, 0x20, 0x74, 0x68, 0x65,
0x20, 0x4D, 0x45, 0x20, 0x49 };
static unsigned char play_tone_1110[] = { 0xD0, 0x16, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x04, 0x42, 0x65, 0x65,
0x70, 0x8E, 0x01, 0x10, 0x84,
0x02, 0x01, 0x01 };
static unsigned char play_tone_1111[] = { 0xD0, 0x1A, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x08, 0x50, 0x6F, 0x73,
0x69, 0x74, 0x69, 0x76, 0x65,
0x8E, 0x01, 0x11, 0x84, 0x02,
0x01, 0x01 };
static unsigned char play_tone_1112[] = { 0xD0, 0x1A, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x08, 0x4E, 0x65, 0x67,
0x61, 0x74, 0x69, 0x76, 0x65,
0x8E, 0x01, 0x12, 0x84, 0x02,
0x01, 0x01 };
static unsigned char play_tone_1113[] = { 0xD0, 0x17, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x05, 0x51, 0x75, 0x69,
0x63, 0x6B, 0x8E, 0x01, 0x10,
0x84, 0x02, 0x02, 0x02 };
static unsigned char play_tone_1114[] = { 0xD0, 0x19, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x07, 0x3C, 0x41, 0x42,
0x4F, 0x52, 0x54, 0x3E, 0x8E,
0x01, 0x06, 0x84, 0x02, 0x00,
0x01 };
static unsigned char play_tone_1115[] = { 0xD0, 0x09, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03 };
static unsigned char play_tone_211[] = { 0xD0, 0x2B, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x19, 0x80, 0x04, 0x17,
0x04, 0x14, 0x04, 0x20, 0x04,
0x10, 0x04, 0x12, 0x04, 0x21,
0x04, 0x22, 0x04, 0x12, 0x04,
0x23, 0x04, 0x19, 0x04, 0x22,
0x04, 0x15, 0x8E, 0x01, 0x11,
0x84, 0x02, 0x01, 0x01 };
static unsigned char play_tone_212[] = { 0xD0, 0x21, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x0F, 0x81, 0x0C, 0x08,
0x97, 0x94, 0xA0, 0x90, 0x92,
0xA1, 0xA2, 0x92, 0xA3, 0x99,
0xA2, 0x95, 0x8E, 0x01, 0x11,
0x84, 0x02, 0x01, 0x01 };
static unsigned char play_tone_213[] = { 0xD0, 0x22, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x10, 0x82, 0x0C, 0x04,
0x10, 0x87, 0x84, 0x90, 0x80,
0x82, 0x91, 0x92, 0x82, 0x93,
0x89, 0x92, 0x85, 0x8E, 0x01,
0x11, 0x84, 0x02, 0x01, 0x01 };
static unsigned char play_tone_311[] = { 0xD0, 0x22, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x0C, 0x3C, 0x42, 0x41,
0x53, 0x49, 0x43, 0x2D, 0x49,
0x43, 0x4F, 0x4E, 0x3E, 0x8E,
0x01, 0x11, 0x84, 0x02, 0x01,
0x01, 0x1E, 0x02, 0x00, 0x01 };
static unsigned char play_tone_321[] = { 0xD0, 0x22, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x0C, 0x3C, 0x42, 0x41,
0x53, 0x49, 0x43, 0x2D, 0x49,
0x43, 0x4F, 0x4E, 0x3E, 0x8E,
0x01, 0x11, 0x84, 0x02, 0x01,
0x01, 0x1E, 0x02, 0x01, 0x01 };
static unsigned char play_tone_331[] = { 0xD0, 0x23, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x0D, 0x3C, 0x43, 0x4F,
0x4C, 0x4F, 0x55, 0x52, 0x2D,
0x49, 0x43, 0x4F, 0x4E, 0x3E,
0x8E, 0x01, 0x11, 0x84, 0x02,
0x01, 0x01, 0x1E, 0x02, 0x00,
0x02 };
static unsigned char play_tone_341[] = { 0xD0, 0x23, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x0D, 0x3C, 0x43, 0x4F,
0x4C, 0x4F, 0x55, 0x52, 0x2D,
0x49, 0x43, 0x4F, 0x4E, 0x3E,
0x8E, 0x01, 0x11, 0x84, 0x02,
0x01, 0x01, 0x1E, 0x02, 0x01,
0x02 };
static unsigned char play_tone_411[] = { 0xD0, 0x28, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x10, 0x54, 0x65, 0x78,
0x74, 0x20, 0x41, 0x74, 0x74,
0x72, 0x69, 0x62, 0x75, 0x74,
0x65, 0x20, 0x31, 0x8E, 0x01,
0x11, 0x84, 0x02, 0x01, 0x01,
0xD0, 0x04, 0x00, 0x10, 0x00,
0xB4 };
static unsigned char play_tone_412[] = { 0xD0, 0x22, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x10, 0x54, 0x65, 0x78,
0x74, 0x20, 0x41, 0x74, 0x74,
0x72, 0x69, 0x62, 0x75, 0x74,
0x65, 0x20, 0x32, 0x8E, 0x01,
0x11, 0x84, 0x02, 0x01, 0x01 };
static unsigned char play_tone_421[] = { 0xD0, 0x28, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x10, 0x54, 0x65, 0x78,
0x74, 0x20, 0x41, 0x74, 0x74,
0x72, 0x69, 0x62, 0x75, 0x74,
0x65, 0x20, 0x31, 0x8E, 0x01,
0x11, 0x84, 0x02, 0x01, 0x01,
0xD0, 0x04, 0x00, 0x10, 0x01,
0xB4 };
static unsigned char play_tone_422[] = { 0xD0, 0x22, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x10, 0x54, 0x65, 0x78,
0x74, 0x20, 0x41, 0x74, 0x74,
0x72, 0x69, 0x62, 0x75, 0x74,
0x65, 0x20, 0x32, 0x8E, 0x01,
0x11, 0x84, 0x02, 0x01, 0x01 };
static unsigned char play_tone_431[] = { 0xD0, 0x28, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x10, 0x54, 0x65, 0x78,
0x74, 0x20, 0x41, 0x74, 0x74,
0x72, 0x69, 0x62, 0x75, 0x74,
0x65, 0x20, 0x31, 0x8E, 0x01,
0x11, 0x84, 0x02, 0x01, 0x01,
0xD0, 0x04, 0x00, 0x10, 0x02,
0xB4 };
static unsigned char play_tone_432[] = { 0xD0, 0x22, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x10, 0x54, 0x65, 0x78,
0x74, 0x20, 0x41, 0x74, 0x74,
0x72, 0x69, 0x62, 0x75, 0x74,
0x65, 0x20, 0x32, 0x8E, 0x01,
0x11, 0x84, 0x02, 0x01, 0x01 };
static unsigned char play_tone_441[] = { 0xD0, 0x28, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x10, 0x54, 0x65, 0x78,
0x74, 0x20, 0x41, 0x74, 0x74,
0x72, 0x69, 0x62, 0x75, 0x74,
0x65, 0x20, 0x31, 0x8E, 0x01,
0x11, 0x84, 0x02, 0x01, 0x01,
0xD0, 0x04, 0x00, 0x10, 0x04,
0xB4 };
static unsigned char play_tone_442[] = { 0xD0, 0x28, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x10, 0x54, 0x65, 0x78,
0x74, 0x20, 0x41, 0x74, 0x74,
0x72, 0x69, 0x62, 0x75, 0x74,
0x65, 0x20, 0x32, 0x8E, 0x01,
0x11, 0x84, 0x02, 0x01, 0x01,
0xD0, 0x04, 0x00, 0x10, 0x00,
0xB4 };
static unsigned char play_tone_443[] = { 0xD0, 0x22, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x10, 0x54, 0x65, 0x78,
0x74, 0x20, 0x41, 0x74, 0x74,
0x72, 0x69, 0x62, 0x75, 0x74,
0x65, 0x20, 0x33, 0x8E, 0x01,
0x11, 0x84, 0x02, 0x01, 0x01 };
static unsigned char play_tone_451[] = { 0xD0, 0x28, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x10, 0x54, 0x65, 0x78,
0x74, 0x20, 0x41, 0x74, 0x74,
0x72, 0x69, 0x62, 0x75, 0x74,
0x65, 0x20, 0x31, 0x8E, 0x01,
0x11, 0x84, 0x02, 0x01, 0x01,
0xD0, 0x04, 0x00, 0x10, 0x08,
0xB4 };
static unsigned char play_tone_452[] = { 0xD0, 0x28, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x10, 0x54, 0x65, 0x78,
0x74, 0x20, 0x41, 0x74, 0x74,
0x72, 0x69, 0x62, 0x75, 0x74,
0x65, 0x20, 0x32, 0x8E, 0x01,
0x11, 0x84, 0x02, 0x01, 0x01,
0xD0, 0x04, 0x00, 0x10, 0x00,
0xB4 };
static unsigned char play_tone_453[] = { 0xD0, 0x22, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x10, 0x54, 0x65, 0x78,
0x74, 0x20, 0x41, 0x74, 0x74,
0x72, 0x69, 0x62, 0x75, 0x74,
0x65, 0x20, 0x33, 0x8E, 0x01,
0x11, 0x84, 0x02, 0x01, 0x01 };
static unsigned char play_tone_461[] = { 0xD0, 0x28, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x10, 0x54, 0x65, 0x78,
0x74, 0x20, 0x41, 0x74, 0x74,
0x72, 0x69, 0x62, 0x75, 0x74,
0x65, 0x20, 0x31, 0x8E, 0x01,
0x11, 0x84, 0x02, 0x01, 0x01,
0xD0, 0x04, 0x00, 0x0E, 0x10,
0xB4 };
static unsigned char play_tone_462[] = { 0xD0, 0x28, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x10, 0x54, 0x65, 0x78,
0x74, 0x20, 0x41, 0x74, 0x74,
0x72, 0x69, 0x62, 0x75, 0x74,
0x65, 0x20, 0x32, 0x8E, 0x01,
0x11, 0x84, 0x02, 0x01, 0x01,
0xD0, 0x04, 0x00, 0x10, 0x00,
0xB4 };
static unsigned char play_tone_463[] = { 0xD0, 0x22, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x10, 0x54, 0x65, 0x78,
0x74, 0x20, 0x41, 0x74, 0x74,
0x72, 0x69, 0x62, 0x75, 0x74,
0x65, 0x20, 0x33, 0x8E, 0x01,
0x11, 0x84, 0x02, 0x01, 0x01 };
static unsigned char play_tone_471[] = { 0xD0, 0x28, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x10, 0x54, 0x65, 0x78,
0x74, 0x20, 0x41, 0x74, 0x74,
0x72, 0x69, 0x62, 0x75, 0x74,
0x65, 0x20, 0x31, 0x8E, 0x01,
0x11, 0x84, 0x02, 0x01, 0x01,
0xD0, 0x04, 0x00, 0x0E, 0x20,
0xB4 };
static unsigned char play_tone_472[] = { 0xD0, 0x28, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x10, 0x54, 0x65, 0x78,
0x74, 0x20, 0x41, 0x74, 0x74,
0x72, 0x69, 0x62, 0x75, 0x74,
0x65, 0x20, 0x32, 0x8E, 0x01,
0x11, 0x84, 0x02, 0x01, 0x01,
0xD0, 0x04, 0x00, 0x10, 0x00,
0xB4 };
static unsigned char play_tone_473[] = { 0xD0, 0x22, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x10, 0x54, 0x65, 0x78,
0x74, 0x20, 0x41, 0x74, 0x74,
0x72, 0x69, 0x62, 0x75, 0x74,
0x65, 0x20, 0x33, 0x8E, 0x01,
0x11, 0x84, 0x02, 0x01, 0x01 };
static unsigned char play_tone_481[] = { 0xD0, 0x28, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x10, 0x54, 0x65, 0x78,
0x74, 0x20, 0x41, 0x74, 0x74,
0x72, 0x69, 0x62, 0x75, 0x74,
0x65, 0x20, 0x31, 0x8E, 0x01,
0x11, 0x84, 0x02, 0x01, 0x01,
0xD0, 0x04, 0x00, 0x10, 0x40,
0xB4 };
static unsigned char play_tone_482[] = { 0xD0, 0x28, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x10, 0x54, 0x65, 0x78,
0x74, 0x20, 0x41, 0x74, 0x74,
0x72, 0x69, 0x62, 0x75, 0x74,
0x65, 0x20, 0x32, 0x8E, 0x01,
0x11, 0x84, 0x02, 0x01, 0x01,
0xD0, 0x04, 0x00, 0x10, 0x00,
0xB4 };
static unsigned char play_tone_483[] = { 0xD0, 0x22, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x10, 0x54, 0x65, 0x78,
0x74, 0x20, 0x41, 0x74, 0x74,
0x72, 0x69, 0x62, 0x75, 0x74,
0x65, 0x20, 0x33, 0x8E, 0x01,
0x11, 0x84, 0x02, 0x01, 0x01 };
static unsigned char play_tone_491[] = { 0xD0, 0x28, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x10, 0x54, 0x65, 0x78,
0x74, 0x20, 0x41, 0x74, 0x74,
0x72, 0x69, 0x62, 0x75, 0x74,
0x65, 0x20, 0x31, 0x8E, 0x01,
0x11, 0x84, 0x02, 0x01, 0x01,
0xD0, 0x04, 0x00, 0x10, 0x80,
0xB4 };
static unsigned char play_tone_492[] = { 0xD0, 0x28, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x10, 0x54, 0x65, 0x78,
0x74, 0x20, 0x41, 0x74, 0x74,
0x72, 0x69, 0x62, 0x75, 0x74,
0x65, 0x20, 0x32, 0x8E, 0x01,
0x11, 0x84, 0x02, 0x01, 0x01,
0xD0, 0x04, 0x00, 0x10, 0x00,
0xB4 };
static unsigned char play_tone_493[] = { 0xD0, 0x22, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x10, 0x54, 0x65, 0x78,
0x74, 0x20, 0x41, 0x74, 0x74,
0x72, 0x69, 0x62, 0x75, 0x74,
0x65, 0x20, 0x33, 0x8E, 0x01,
0x11, 0x84, 0x02, 0x01, 0x01 };
static unsigned char play_tone_4101[] = { 0xD0, 0x28, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x10, 0x54, 0x65, 0x78,
0x74, 0x20, 0x41, 0x74, 0x74,
0x72, 0x69, 0x62, 0x75, 0x74,
0x65, 0x20, 0x31, 0x8E, 0x01,
0x11, 0x84, 0x02, 0x01, 0x01,
0xD0, 0x04, 0x00, 0x10, 0x00,
0xB4 };
static unsigned char play_tone_4102[] = { 0xD0, 0x22, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x10, 0x54, 0x65, 0x78,
0x74, 0x20, 0x41, 0x74, 0x74,
0x72, 0x69, 0x62, 0x75, 0x74,
0x65, 0x20, 0x32, 0x8E, 0x01,
0x11, 0x84, 0x02, 0x01, 0x01 };
static unsigned char play_tone_511[] = { 0xD0, 0x17, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x05, 0x80, 0x4E, 0x2D,
0x4E, 0x00, 0x8E, 0x01, 0x11,
0x84, 0x02, 0x01, 0x01 };
static unsigned char play_tone_512[] = { 0xD0, 0x17, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x05, 0x81, 0x02, 0x9C,
0xAD, 0x80, 0x8E, 0x01, 0x11,
0x84, 0x02, 0x01, 0x01 };
static unsigned char play_tone_513[] = { 0xD0, 0x18, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x06, 0x82, 0x02, 0x4E,
0x00, 0xAD, 0x80, 0x8E, 0x01,
0x11, 0x84, 0x02, 0x01, 0x01 };
static unsigned char play_tone_611[] = { 0xD0, 0x1B, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x09, 0x80, 0x00, 0x38,
0x00, 0x30, 0x30, 0xEB, 0x00,
0x30, 0x8E, 0x01, 0x01, 0x84,
0x02, 0x01, 0x05 };
static unsigned char play_tone_612[] = { 0xD0, 0x19, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x07, 0x81, 0x04, 0x61,
0x38, 0x31, 0xEB, 0x31, 0x8E,
0x01, 0x01, 0x84, 0x02, 0x01,
0x05 };
static unsigned char play_tone_613[] = { 0xD0, 0x1A, 0x81, 0x03, 0x01, 0x20,
0x00, 0x82, 0x02, 0x81, 0x03,
0x85, 0x08, 0x82, 0x04, 0x30,
0xA0, 0x38, 0x32, 0xCB, 0x32,
0x8E, 0x01, 0x01, 0x84, 0x02,
0x01, 0x05 };
static struct play_tone_test play_tone_data_111 = {
.pdu = play_tone_111,
.pdu_len = sizeof(play_tone_111),
.qualifier = 0x00,
.alpha_id = "Dial Tone",
.tone = STK_TONE_TYPE_DIAL_TONE,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 5
}
};
static struct play_tone_test play_tone_data_112 = {
.pdu = play_tone_112,
.pdu_len = sizeof(play_tone_112),
.qualifier = 0x00,
.alpha_id = "Sub. Busy",
.tone = STK_TONE_TYPE_BUSY_TONE,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 5
}
};
static struct play_tone_test play_tone_data_113 = {
.pdu = play_tone_113,
.pdu_len = sizeof(play_tone_113),
.qualifier = 0x00,
.alpha_id = "Congestion",
.tone = STK_TONE_TYPE_CONGESTION,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 5
}
};
static struct play_tone_test play_tone_data_114 = {
.pdu = play_tone_114,
.pdu_len = sizeof(play_tone_114),
.qualifier = 0x00,
.alpha_id = "RP Ack",
.tone = STK_TONE_TYPE_RP_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 5
}
};
static struct play_tone_test play_tone_data_115 = {
.pdu = play_tone_115,
.pdu_len = sizeof(play_tone_115),
.qualifier = 0x00,
.alpha_id = "No RP",
.tone = STK_TONE_TYPE_CALL_DROPPED,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 5
}
};
static struct play_tone_test play_tone_data_116 = {
.pdu = play_tone_116,
.pdu_len = sizeof(play_tone_116),
.qualifier = 0x00,
.alpha_id = "Spec Info",
.tone = STK_TONE_TYPE_ERROR,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 5
}
};
static struct play_tone_test play_tone_data_117 = {
.pdu = play_tone_117,
.pdu_len = sizeof(play_tone_117),
.qualifier = 0x00,
.alpha_id = "Call Wait",
.tone = STK_TONE_TYPE_CALL_WAITING,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 5
}
};
static struct play_tone_test play_tone_data_118 = {
.pdu = play_tone_118,
.pdu_len = sizeof(play_tone_118),
.qualifier = 0x00,
.alpha_id = "Ring Tone",
.tone = STK_TONE_TYPE_RINGING,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 5
}
};
static struct play_tone_test play_tone_data_119 = {
.pdu = play_tone_119,
.pdu_len = sizeof(play_tone_119),
.qualifier = 0x00,
.alpha_id = "This command instructs the ME to play an audio tone. "
"Upon receiving this command, the ME shall check "
"if it is currently in, or in the process of setting "
"up (SET-UP message sent to the network, see "
"GSM\"04.08\"(8)), a speech call. - If the ME I"
};
static struct play_tone_test play_tone_data_1110 = {
.pdu = play_tone_1110,
.pdu_len = sizeof(play_tone_1110),
.qualifier = 0x00,
.alpha_id = "Beep",
.tone = STK_TONE_TYPE_GENERAL_BEEP,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
}
};
static struct play_tone_test play_tone_data_1111 = {
.pdu = play_tone_1111,
.pdu_len = sizeof(play_tone_1111),
.qualifier = 0x00,
.alpha_id = "Positive",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
}
};
static struct play_tone_test play_tone_data_1112 = {
.pdu = play_tone_1112,
.pdu_len = sizeof(play_tone_1112),
.qualifier = 0x00,
.alpha_id = "Negative",
.tone = STK_TONE_TYPE_NEGATIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
}
};
static struct play_tone_test play_tone_data_1113 = {
.pdu = play_tone_1113,
.pdu_len = sizeof(play_tone_1113),
.qualifier = 0x00,
.alpha_id = "Quick",
.tone = STK_TONE_TYPE_GENERAL_BEEP,
.duration = {
.unit = STK_DURATION_TYPE_SECOND_TENTHS,
.interval = 2
}
};
static struct play_tone_test play_tone_data_1114 = {
.pdu = play_tone_1114,
.pdu_len = sizeof(play_tone_1114),
.qualifier = 0x00,
.alpha_id = "<ABORT>",
.tone = STK_TONE_TYPE_ERROR,
.duration = {
.unit = STK_DURATION_TYPE_MINUTES,
.interval = 1
}
};
static struct play_tone_test play_tone_data_1115 = {
.pdu = play_tone_1115,
.pdu_len = sizeof(play_tone_1115),
.qualifier = 0x00
};
static struct play_tone_test play_tone_data_211 = {
.pdu = play_tone_211,
.pdu_len = sizeof(play_tone_211),
.qualifier = 0x00,
.alpha_id = "ЗДРАВСТВУЙТЕ",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
}
};
static struct play_tone_test play_tone_data_212 = {
.pdu = play_tone_212,
.pdu_len = sizeof(play_tone_212),
.qualifier = 0x00,
.alpha_id = "ЗДРАВСТВУЙТЕ",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
}
};
static struct play_tone_test play_tone_data_213 = {
.pdu = play_tone_213,
.pdu_len = sizeof(play_tone_213),
.qualifier = 0x00,
.alpha_id = "ЗДРАВСТВУЙТЕ",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
}
};
static struct play_tone_test play_tone_data_311 = {
.pdu = play_tone_311,
.pdu_len = sizeof(play_tone_311),
.qualifier = 0x00,
.alpha_id = "<BASIC-ICON>",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
},
.icon_id = {
.qualifier = STK_ICON_QUALIFIER_TYPE_SELF_EXPLANATORY,
.id = 0x01
}
};
static struct play_tone_test play_tone_data_321 = {
.pdu = play_tone_321,
.pdu_len = sizeof(play_tone_321),
.qualifier = 0x00,
.alpha_id = "<BASIC-ICON>",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
},
.icon_id = {
.qualifier = STK_ICON_QUALIFIER_TYPE_NON_SELF_EXPLANATORY,
.id = 0x01
}
};
static struct play_tone_test play_tone_data_331 = {
.pdu = play_tone_331,
.pdu_len = sizeof(play_tone_331),
.qualifier = 0x00,
.alpha_id = "<COLOUR-ICON>",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
},
.icon_id = {
.qualifier = STK_ICON_QUALIFIER_TYPE_SELF_EXPLANATORY,
.id = 0x02
}
};
static struct play_tone_test play_tone_data_341 = {
.pdu = play_tone_341,
.pdu_len = sizeof(play_tone_341),
.qualifier = 0x00,
.alpha_id = "<COLOUR-ICON>",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
},
.icon_id = {
.qualifier = STK_ICON_QUALIFIER_TYPE_NON_SELF_EXPLANATORY,
.id = 0x02
}
};
static struct play_tone_test play_tone_data_411 = {
.pdu = play_tone_411,
.pdu_len = sizeof(play_tone_411),
.qualifier = 0x00,
.alpha_id = "Text Attribute 1",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x10, 0x00, 0xB4 }
}
};
static struct play_tone_test play_tone_data_412 = {
.pdu = play_tone_412,
.pdu_len = sizeof(play_tone_412),
.qualifier = 0x00,
.alpha_id = "Text Attribute 2",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
}
};
static struct play_tone_test play_tone_data_421 = {
.pdu = play_tone_421,
.pdu_len = sizeof(play_tone_421),
.qualifier = 0x00,
.alpha_id = "Text Attribute 1",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x10, 0x01, 0xB4 }
}
};
static struct play_tone_test play_tone_data_422 = {
.pdu = play_tone_422,
.pdu_len = sizeof(play_tone_422),
.qualifier = 0x00,
.alpha_id = "Text Attribute 2",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
}
};
static struct play_tone_test play_tone_data_431 = {
.pdu = play_tone_431,
.pdu_len = sizeof(play_tone_431),
.qualifier = 0x00,
.alpha_id = "Text Attribute 1",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x10, 0x02, 0xB4 }
}
};
static struct play_tone_test play_tone_data_432 = {
.pdu = play_tone_432,
.pdu_len = sizeof(play_tone_432),
.qualifier = 0x00,
.alpha_id = "Text Attribute 2",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
}
};
static struct play_tone_test play_tone_data_441 = {
.pdu = play_tone_441,
.pdu_len = sizeof(play_tone_441),
.qualifier = 0x00,
.alpha_id = "Text Attribute 1",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x10, 0x04, 0xB4 }
}
};
static struct play_tone_test play_tone_data_442 = {
.pdu = play_tone_442,
.pdu_len = sizeof(play_tone_442),
.qualifier = 0x00,
.alpha_id = "Text Attribute 2",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x10, 0x00, 0xB4 }
}
};
static struct play_tone_test play_tone_data_443 = {
.pdu = play_tone_443,
.pdu_len = sizeof(play_tone_443),
.qualifier = 0x00,
.alpha_id = "Text Attribute 3",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
}
};
static struct play_tone_test play_tone_data_451 = {
.pdu = play_tone_451,
.pdu_len = sizeof(play_tone_451),
.qualifier = 0x00,
.alpha_id = "Text Attribute 1",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x10, 0x08, 0xB4 }
}
};
static struct play_tone_test play_tone_data_452 = {
.pdu = play_tone_452,
.pdu_len = sizeof(play_tone_452),
.qualifier = 0x00,
.alpha_id = "Text Attribute 2",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x10, 0x00, 0xB4 }
}
};
static struct play_tone_test play_tone_data_453 = {
.pdu = play_tone_453,
.pdu_len = sizeof(play_tone_453),
.qualifier = 0x00,
.alpha_id = "Text Attribute 3",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
}
};
static struct play_tone_test play_tone_data_461 = {
.pdu = play_tone_461,
.pdu_len = sizeof(play_tone_461),
.qualifier = 0x00,
.alpha_id = "Text Attribute 1",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x0E, 0x10, 0xB4 }
}
};
static struct play_tone_test play_tone_data_462 = {
.pdu = play_tone_462,
.pdu_len = sizeof(play_tone_462),
.qualifier = 0x00,
.alpha_id = "Text Attribute 2",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x10, 0x00, 0xB4 }
}
};
static struct play_tone_test play_tone_data_463 = {
.pdu = play_tone_463,
.pdu_len = sizeof(play_tone_463),
.qualifier = 0x00,
.alpha_id = "Text Attribute 3",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
}
};
static struct play_tone_test play_tone_data_471 = {
.pdu = play_tone_471,
.pdu_len = sizeof(play_tone_471),
.qualifier = 0x00,
.alpha_id = "Text Attribute 1",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x0E, 0x20, 0xB4 }
}
};
static struct play_tone_test play_tone_data_472 = {
.pdu = play_tone_472,
.pdu_len = sizeof(play_tone_472),
.qualifier = 0x00,
.alpha_id = "Text Attribute 2",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x10, 0x00, 0xB4 }
}
};
static struct play_tone_test play_tone_data_473 = {
.pdu = play_tone_473,
.pdu_len = sizeof(play_tone_473),
.qualifier = 0x00,
.alpha_id = "Text Attribute 3",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
}
};
static struct play_tone_test play_tone_data_481 = {
.pdu = play_tone_481,
.pdu_len = sizeof(play_tone_481),
.qualifier = 0x00,
.alpha_id = "Text Attribute 1",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x10, 0x40, 0xB4 }
}
};
static struct play_tone_test play_tone_data_482 = {
.pdu = play_tone_482,
.pdu_len = sizeof(play_tone_482),
.qualifier = 0x00,
.alpha_id = "Text Attribute 2",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x10, 0x00, 0xB4 }
}
};
static struct play_tone_test play_tone_data_483 = {
.pdu = play_tone_483,
.pdu_len = sizeof(play_tone_483),
.qualifier = 0x00,
.alpha_id = "Text Attribute 3",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
}
};
static struct play_tone_test play_tone_data_491 = {
.pdu = play_tone_491,
.pdu_len = sizeof(play_tone_491),
.qualifier = 0x00,
.alpha_id = "Text Attribute 1",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x10, 0x80, 0xB4 }
}
};
static struct play_tone_test play_tone_data_492 = {
.pdu = play_tone_492,
.pdu_len = sizeof(play_tone_492),
.qualifier = 0x00,
.alpha_id = "Text Attribute 2",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x10, 0x00, 0xB4 }
}
};
static struct play_tone_test play_tone_data_493 = {
.pdu = play_tone_493,
.pdu_len = sizeof(play_tone_493),
.qualifier = 0x00,
.alpha_id = "Text Attribute 3",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
}
};
static struct play_tone_test play_tone_data_4101 = {
.pdu = play_tone_4101,
.pdu_len = sizeof(play_tone_4101),
.qualifier = 0x00,
.alpha_id = "Text Attribute 1",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x10, 0x00, 0xB4 }
}
};
static struct play_tone_test play_tone_data_4102 = {
.pdu = play_tone_4102,
.pdu_len = sizeof(play_tone_4102),
.qualifier = 0x00,
.alpha_id = "Text Attribute 2",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
}
};
static struct play_tone_test play_tone_data_511 = {
.pdu = play_tone_511,
.pdu_len = sizeof(play_tone_511),
.qualifier = 0x00,
.alpha_id = "中一",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
}
};
static struct play_tone_test play_tone_data_512 = {
.pdu = play_tone_512,
.pdu_len = sizeof(play_tone_512),
.qualifier = 0x00,
.alpha_id = "中一",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
}
};
static struct play_tone_test play_tone_data_513 = {
.pdu = play_tone_513,
.pdu_len = sizeof(play_tone_513),
.qualifier = 0x00,
.alpha_id = "中一",
.tone = STK_TONE_TYPE_POSITIVE_ACK,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 1
}
};
static struct play_tone_test play_tone_data_611 = {
.pdu = play_tone_611,
.pdu_len = sizeof(play_tone_611),
.qualifier = 0x00,
.alpha_id = "80ル0",
.tone = STK_TONE_TYPE_DIAL_TONE,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 5
}
};
static struct play_tone_test play_tone_data_612 = {
.pdu = play_tone_612,
.pdu_len = sizeof(play_tone_612),
.qualifier = 0x00,
.alpha_id = "81ル1",
.tone = STK_TONE_TYPE_DIAL_TONE,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 5
}
};
static struct play_tone_test play_tone_data_613 = {
.pdu = play_tone_613,
.pdu_len = sizeof(play_tone_613),
.qualifier = 0x00,
.alpha_id = "82ル2",
.tone = STK_TONE_TYPE_DIAL_TONE,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 5
}
};
/* Defined in TS 102.384 Section 27.22.4.5 */
static void test_play_tone(gconstpointer data)
{
const struct play_tone_test *test = data;
struct stk_command *command;
command = stk_command_new_from_pdu(test->pdu, test->pdu_len);
g_assert(command);
g_assert(command->number == 1);
g_assert(command->type == STK_COMMAND_TYPE_PLAY_TONE);
g_assert(command->qualifier == test->qualifier);
g_assert(command->src == STK_DEVICE_IDENTITY_TYPE_UICC);
g_assert(command->dst == STK_DEVICE_IDENTITY_TYPE_EARPIECE);
check_alpha_id(command->play_tone.alpha_id, test->alpha_id);
check_tone(command->play_tone.tone, test->tone);
check_duration(&command->play_tone.duration, &test->duration);
check_icon_id(&command->play_tone.icon_id, &test->icon_id);
check_text_attr(&command->play_tone.text_attr, &test->text_attr);
check_frame_id(&command->play_tone.frame_id, &test->frame_id);
stk_command_free(command);
}
struct poll_interval_test {
const unsigned char *pdu;
unsigned int pdu_len;
unsigned char qualifier;
struct stk_duration duration;
};
static unsigned char poll_interval_111[] = { 0xD0, 0x0D, 0x81, 0x03, 0x01, 0x03,
0x00, 0x82, 0x02, 0x81, 0x82,
0x84, 0x02, 0x01, 0x14 };
static struct poll_interval_test poll_interval_data_111 = {
.pdu = poll_interval_111,
.pdu_len = sizeof(poll_interval_111),
.qualifier = 0x00,
.duration = {
.unit = STK_DURATION_TYPE_SECONDS,
.interval = 20
}
};
/* Defined in TS 102.384 Section 27.22.4.6 */
static void test_poll_interval(gconstpointer data)
{
const struct poll_interval_test *test = data;
struct stk_command *command;
command = stk_command_new_from_pdu(test->pdu, test->pdu_len);
g_assert(command);
g_assert(command->number == 1);
g_assert(command->type == STK_COMMAND_TYPE_POLL_INTERVAL);
g_assert(command->qualifier == test->qualifier);
g_assert(command->src == STK_DEVICE_IDENTITY_TYPE_UICC);
g_assert(command->dst == STK_DEVICE_IDENTITY_TYPE_TERMINAL);
check_duration(&command->poll_interval.duration, &test->duration);
stk_command_free(command);
}
struct setup_menu_test {
const unsigned char *pdu;
unsigned int pdu_len;
unsigned char qualifier;
char *alpha_id;
struct stk_item items[MAX_ITEM];
struct stk_items_next_action_indicator next_act;
struct stk_icon_id icon_id;
struct stk_item_icon_id_list item_icon_id_list;
struct stk_text_attribute text_attr;
struct stk_item_text_attribute_list item_text_attr_list;
};
static unsigned char setup_menu_111[] = { 0xD0, 0x3B, 0x81, 0x03, 0x01, 0x25,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0C, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x4D, 0x65, 0x6E, 0x75, 0x8F,
0x07, 0x01, 0x49, 0x74, 0x65,
0x6D, 0x20, 0x31, 0x8F, 0x07,
0x02, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x32, 0x8F, 0x07, 0x03,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x33, 0x8F, 0x07, 0x04, 0x49,
0x74, 0x65, 0x6D, 0x20, 0x34 };
static unsigned char setup_menu_112[] = { 0xD0, 0x23, 0x81, 0x03, 0x01, 0x25,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0C, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x4D, 0x65, 0x6E, 0x75, 0x8F,
0x04, 0x11, 0x4F, 0x6E, 0x65,
0x8F, 0x04, 0x12, 0x54, 0x77,
0x6F };
static unsigned char setup_menu_113[] = { 0xD0, 0x0D, 0x81, 0x03, 0x01, 0x25,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x00, 0x8F, 0x00 };
static unsigned char setup_menu_121[] = { 0xD0, 0x81, 0xFC, 0x81, 0x03, 0x01,
0x25, 0x00, 0x82, 0x02, 0x81,
0x82, 0x85, 0x0A, 0x4C, 0x61,
0x72, 0x67, 0x65, 0x4D, 0x65,
0x6E, 0x75, 0x31, 0x8F, 0x05,
0x50, 0x5A, 0x65, 0x72, 0x6F,
0x8F, 0x04, 0x4F, 0x4F, 0x6E,
0x65, 0x8F, 0x04, 0x4E, 0x54,
0x77, 0x6F, 0x8F, 0x06, 0x4D,
0x54, 0x68, 0x72, 0x65, 0x65,
0x8F, 0x05, 0x4C, 0x46, 0x6F,
0x75, 0x72, 0x8F, 0x05, 0x4B,
0x46, 0x69, 0x76, 0x65, 0x8F,
0x04, 0x4A, 0x53, 0x69, 0x78,
0x8F, 0x06, 0x49, 0x53, 0x65,
0x76, 0x65, 0x6E, 0x8F, 0x06,
0x48, 0x45, 0x69, 0x67, 0x68,
0x74, 0x8F, 0x05, 0x47, 0x4E,
0x69, 0x6E, 0x65, 0x8F, 0x06,
0x46, 0x41, 0x6C, 0x70, 0x68,
0x61, 0x8F, 0x06, 0x45, 0x42,
0x72, 0x61, 0x76, 0x6F, 0x8F,
0x08, 0x44, 0x43, 0x68, 0x61,
0x72, 0x6C, 0x69, 0x65, 0x8F,
0x06, 0x43, 0x44, 0x65, 0x6C,
0x74, 0x61, 0x8F, 0x05, 0x42,
0x45, 0x63, 0x68, 0x6F, 0x8F,
0x09, 0x41, 0x46, 0x6F, 0x78,
0x2D, 0x74, 0x72, 0x6F, 0x74,
0x8F, 0x06, 0x40, 0x42, 0x6C,
0x61, 0x63, 0x6B, 0x8F, 0x06,
0x3F, 0x42, 0x72, 0x6F, 0x77,
0x6E, 0x8F, 0x04, 0x3E, 0x52,
0x65, 0x64, 0x8F, 0x07, 0x3D,
0x4F, 0x72, 0x61, 0x6E, 0x67,
0x65, 0x8F, 0x07, 0x3C, 0x59,
0x65, 0x6C, 0x6C, 0x6F, 0x77,
0x8F, 0x06, 0x3B, 0x47, 0x72,
0x65, 0x65, 0x6E, 0x8F, 0x05,
0x3A, 0x42, 0x6C, 0x75, 0x65,
0x8F, 0x07, 0x39, 0x56, 0x69,
0x6F, 0x6C, 0x65, 0x74, 0x8F,
0x05, 0x38, 0x47, 0x72, 0x65,
0x79, 0x8F, 0x06, 0x37, 0x57,
0x68, 0x69, 0x74, 0x65, 0x8F,
0x06, 0x36, 0x6D, 0x69, 0x6C,
0x6C, 0x69, 0x8F, 0x06, 0x35,
0x6D, 0x69, 0x63, 0x72, 0x6F,
0x8F, 0x05, 0x34, 0x6E, 0x61,
0x6E, 0x6F, 0x8F, 0x05, 0x33,
0x70, 0x69, 0x63, 0x6F };
static unsigned char setup_menu_122[] = { 0xD0, 0x81, 0xF3, 0x81, 0x03, 0x01,
0x25, 0x00, 0x82, 0x02, 0x81,
0x82, 0x85, 0x0A, 0x4C, 0x61,
0x72, 0x67, 0x65, 0x4D, 0x65,
0x6E, 0x75, 0x32, 0x8F, 0x1D,
0xFF, 0x31, 0x20, 0x43, 0x61,
0x6C, 0x6C, 0x20, 0x46, 0x6F,
0x72, 0x77, 0x61, 0x72, 0x64,
0x20, 0x55, 0x6E, 0x63, 0x6F,
0x6E, 0x64, 0x69, 0x74, 0x69,
0x6F, 0x6E, 0x61, 0x6C, 0x8F,
0x1C, 0xFE, 0x32, 0x20, 0x43,
0x61, 0x6C, 0x6C, 0x20, 0x46,
0x6F, 0x72, 0x77, 0x61, 0x72,
0x64, 0x20, 0x4F, 0x6E, 0x20,
0x55, 0x73, 0x65, 0x72, 0x20,
0x42, 0x75, 0x73, 0x79, 0x8F,
0x1B, 0xFD, 0x33, 0x20, 0x43,
0x61, 0x6C, 0x6C, 0x20, 0x46,
0x6F, 0x72, 0x77, 0x61, 0x72,
0x64, 0x20, 0x4F, 0x6E, 0x20,
0x4E, 0x6F, 0x20, 0x52, 0x65,
0x70, 0x6C, 0x79, 0x8F, 0x25,
0xFC, 0x34, 0x20, 0x43, 0x61,
0x6C, 0x6C, 0x20, 0x46, 0x6F,
0x72, 0x77, 0x61, 0x72, 0x64,
0x20, 0x4F, 0x6E, 0x20, 0x55,
0x73, 0x65, 0x72, 0x20, 0x4E,
0x6F, 0x74, 0x20, 0x52, 0x65,
0x61, 0x63, 0x68, 0x61, 0x62,
0x6C, 0x65, 0x8F, 0x20, 0xFB,
0x35, 0x20, 0x42, 0x61, 0x72,
0x72, 0x69, 0x6E, 0x67, 0x20,
0x4F, 0x66, 0x20, 0x41, 0x6C,
0x6C, 0x20, 0x4F, 0x75, 0x74,
0x67, 0x6F, 0x69, 0x6E, 0x67,
0x20, 0x43, 0x61, 0x6C, 0x6C,
0x73, 0x8F, 0x24, 0xFA, 0x36,
0x20, 0x42, 0x61, 0x72, 0x72,
0x69, 0x6E, 0x67, 0x20, 0x4F,
0x66, 0x20, 0x41, 0x6C, 0x6C,
0x20, 0x4F, 0x75, 0x74, 0x67,
0x6F, 0x69, 0x6E, 0x67, 0x20,
0x49, 0x6E, 0x74, 0x20, 0x43,
0x61, 0x6C, 0x6C, 0x73, 0x8F,
0x13, 0xF9, 0x37, 0x20, 0x43,
0x4C, 0x49, 0x20, 0x50, 0x72,
0x65, 0x73, 0x65, 0x6E, 0x74,
0x61, 0x74, 0x69, 0x6F, 0x6E };
static unsigned char setup_menu_123[] = { 0xD0, 0x81, 0xFC, 0x81, 0x03, 0x01,
0x25, 0x00, 0x82, 0x02, 0x81,
0x82, 0x85, 0x81, 0xEC, 0x54,
0x68, 0x65, 0x20, 0x53, 0x49,
0x4D, 0x20, 0x73, 0x68, 0x61,
0x6C, 0x6C, 0x20, 0x73, 0x75,
0x70, 0x70, 0x6C, 0x79, 0x20,
0x61, 0x20, 0x73, 0x65, 0x74,
0x20, 0x6F, 0x66, 0x20, 0x6D,
0x65, 0x6E, 0x75, 0x20, 0x69,
0x74, 0x65, 0x6D, 0x73, 0x2C,
0x20, 0x77, 0x68, 0x69, 0x63,
0x68, 0x20, 0x73, 0x68, 0x61,
0x6C, 0x6C, 0x20, 0x62, 0x65,
0x20, 0x69, 0x6E, 0x74, 0x65,
0x67, 0x72, 0x61, 0x74, 0x65,
0x64, 0x20, 0x77, 0x69, 0x74,
0x68, 0x20, 0x74, 0x68, 0x65,
0x20, 0x6D, 0x65, 0x6E, 0x75,
0x20, 0x73, 0x79, 0x73, 0x74,
0x65, 0x6D, 0x20, 0x28, 0x6F,
0x72, 0x20, 0x6F, 0x74, 0x68,
0x65, 0x72, 0x20, 0x4D, 0x4D,
0x49, 0x20, 0x66, 0x61, 0x63,
0x69, 0x6C, 0x69, 0x74, 0x79,
0x29, 0x20, 0x69, 0x6E, 0x20,
0x6F, 0x72, 0x64, 0x65, 0x72,
0x20, 0x74, 0x6F, 0x20, 0x67,
0x69, 0x76, 0x65, 0x20, 0x74,
0x68, 0x65, 0x20, 0x75, 0x73,
0x65, 0x72, 0x20, 0x74, 0x68,
0x65, 0x20, 0x6F, 0x70, 0x70,
0x6F, 0x72, 0x74, 0x75, 0x6E,
0x69, 0x74, 0x79, 0x20, 0x74,
0x6F, 0x20, 0x63, 0x68, 0x6F,
0x6F, 0x73, 0x65, 0x20, 0x6F,
0x6E, 0x65, 0x20, 0x6F, 0x66,
0x20, 0x74, 0x68, 0x65, 0x73,
0x65, 0x20, 0x6D, 0x65, 0x6E,
0x75, 0x20, 0x69, 0x74, 0x65,
0x6D, 0x73, 0x20, 0x61, 0x74,
0x20, 0x68, 0x69, 0x73, 0x20,
0x6F, 0x77, 0x6E, 0x20, 0x64,
0x69, 0x73, 0x63, 0x72, 0x65,
0x74, 0x69, 0x6F, 0x6E, 0x2E,
0x20, 0x45, 0x61, 0x63, 0x68,
0x20, 0x69, 0x74, 0x65, 0x6D,
0x20, 0x63, 0x6F, 0x6D, 0x70,
0x72, 0x69, 0x73, 0x65, 0x73,
0x20, 0x61, 0x20, 0x73, 0x68,
0x8F, 0x02, 0x01, 0x59 };
static unsigned char setup_menu_211[] = { 0xD0, 0x3B, 0x81, 0x03, 0x01, 0x25,
0x80, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0C, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x4D, 0x65, 0x6E, 0x75, 0x8F,
0x07, 0x01, 0x49, 0x74, 0x65,
0x6D, 0x20, 0x31, 0x8F, 0x07,
0x02, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x32, 0x8F, 0x07, 0x03,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x33, 0x8F, 0x07, 0x04, 0x49,
0x74, 0x65, 0x6D, 0x20, 0x34 };
static unsigned char setup_menu_311[] = { 0xD0, 0x41, 0x81, 0x03, 0x01, 0x25,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0C, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x4D, 0x65, 0x6E, 0x75, 0x8F,
0x07, 0x01, 0x49, 0x74, 0x65,
0x6D, 0x20, 0x31, 0x8F, 0x07,
0x02, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x32, 0x8F, 0x07, 0x03,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x33, 0x8F, 0x07, 0x04, 0x49,
0x74, 0x65, 0x6D, 0x20, 0x34,
0x18, 0x04, 0x13, 0x10, 0x15,
0x26 };
static unsigned char setup_menu_411[] = { 0xD0, 0x3C, 0x81, 0x03, 0x01, 0x25,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0C, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x4D, 0x65, 0x6E, 0x75, 0x8F,
0x07, 0x01, 0x49, 0x74, 0x65,
0x6D, 0x20, 0x31, 0x8F, 0x07,
0x02, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x32, 0x8F, 0x07, 0x03,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x33, 0x9E, 0x02, 0x01, 0x01,
0x9F, 0x04, 0x01, 0x05, 0x05,
0x05 };
static unsigned char setup_menu_421[] = { 0xD0, 0x3C, 0x81, 0x03, 0x01, 0x25,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0C, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x4D, 0x65, 0x6E, 0x75, 0x8F,
0x07, 0x01, 0x49, 0x74, 0x65,
0x6D, 0x20, 0x31, 0x8F, 0x07,
0x02, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x32, 0x8F, 0x07, 0x03,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x33, 0x9E, 0x02, 0x00, 0x01,
0x9F, 0x04, 0x00, 0x05, 0x05,
0x05 };
static unsigned char setup_menu_511[] = { 0xD0, 0x29, 0x81, 0x03, 0x01, 0x25,
0x01, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0C, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x4D, 0x65, 0x6E, 0x75, 0x8F,
0x07, 0x01, 0x49, 0x74, 0x65,
0x6D, 0x20, 0x31, 0x8F, 0x07,
0x02, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x32 };
static unsigned char setup_menu_611[] = { 0xD0, 0x48, 0x81, 0x03, 0x01, 0x25,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0E, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x4D, 0x65, 0x6E, 0x75, 0x20,
0x31, 0x8F, 0x07, 0x01, 0x49,
0x74, 0x65, 0x6D, 0x20, 0x31,
0x8F, 0x07, 0x02, 0x49, 0x74,
0x65, 0x6D, 0x20, 0x32, 0x8F,
0x07, 0x03, 0x49, 0x74, 0x65,
0x6D, 0x20, 0x33, 0xD0, 0x04,
0x00, 0x0E, 0x00, 0xB4, 0xD1,
0x0C, 0x00, 0x06, 0x00, 0xB4,
0x00, 0x06, 0x00, 0xB4, 0x00,
0x06, 0x00, 0xB4 };
static unsigned char setup_menu_612[] = { 0xD0, 0x34, 0x81, 0x03, 0x01, 0x25,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0E, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x4D, 0x65, 0x6E, 0x75, 0x20,
0x32, 0x8F, 0x07, 0x04, 0x49,
0x74, 0x65, 0x6D, 0x20, 0x34,
0x8F, 0x07, 0x05, 0x49, 0x74,
0x65, 0x6D, 0x20, 0x35, 0x8F,
0x07, 0x06, 0x49, 0x74, 0x65,
0x6D, 0x20, 0x36 };
static unsigned char setup_menu_621[] = { 0xD0, 0x48, 0x81, 0x03, 0x01, 0x25,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0E, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x4D, 0x65, 0x6E, 0x75, 0x20,
0x31, 0x8F, 0x07, 0x01, 0x49,
0x74, 0x65, 0x6D, 0x20, 0x31,
0x8F, 0x07, 0x02, 0x49, 0x74,
0x65, 0x6D, 0x20, 0x32, 0x8F,
0x07, 0x03, 0x49, 0x74, 0x65,
0x6D, 0x20, 0x33, 0xD0, 0x04,
0x00, 0x0E, 0x01, 0xB4, 0xD1,
0x0C, 0x00, 0x06, 0x01, 0xB4,
0x00, 0x06, 0x01, 0xB4, 0x00,
0x06, 0x01, 0xB4 };
static unsigned char setup_menu_622[] = { 0xD0, 0x34, 0x81, 0x03, 0x01, 0x25,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0E, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x4D, 0x65, 0x6E, 0x75, 0x20,
0x32, 0x8F, 0x07, 0x04, 0x49,
0x74, 0x65, 0x6D, 0x20, 0x34,
0x8F, 0x07, 0x05, 0x49, 0x74,
0x65, 0x6D, 0x20, 0x35, 0x8F,
0x07, 0x06, 0x49, 0x74, 0x65,
0x6D, 0x20, 0x36 };
static unsigned char setup_menu_631[] = { 0xD0, 0x48, 0x81, 0x03, 0x01, 0x25,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0E, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x4D, 0x65, 0x6E, 0x75, 0x20,
0x31, 0x8F, 0x07, 0x01, 0x49,
0x74, 0x65, 0x6D, 0x20, 0x31,
0x8F, 0x07, 0x02, 0x49, 0x74,
0x65, 0x6D, 0x20, 0x32, 0x8F,
0x07, 0x03, 0x49, 0x74, 0x65,
0x6D, 0x20, 0x33, 0xD0, 0x04,
0x00, 0x0E, 0x02, 0xB4, 0xD1,
0x0C, 0x00, 0x06, 0x02, 0xB4,
0x00, 0x06, 0x02, 0xB4, 0x00,
0x06, 0x02, 0xB4 };
static unsigned char setup_menu_632[] = { 0xD0, 0x34, 0x81, 0x03, 0x01, 0x25,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0E, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x4D, 0x65, 0x6E, 0x75, 0x20,
0x32, 0x8F, 0x07, 0x04, 0x49,
0x74, 0x65, 0x6D, 0x20, 0x34,
0x8F, 0x07, 0x05, 0x49, 0x74,
0x65, 0x6D, 0x20, 0x35, 0x8F,
0x07, 0x06, 0x49, 0x74, 0x65,
0x6D, 0x20, 0x36 };
static unsigned char setup_menu_641[] = { 0xD0, 0x48, 0x81, 0x03, 0x01, 0x25,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0E, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x4D, 0x65, 0x6E, 0x75, 0x20,
0x31, 0x8F, 0x07, 0x01, 0x49,
0x74, 0x65, 0x6D, 0x20, 0x31,
0x8F, 0x07, 0x02, 0x49, 0x74,
0x65, 0x6D, 0x20, 0x32, 0x8F,
0x07, 0x03, 0x49, 0x74, 0x65,
0x6D, 0x20, 0x33, 0xD0, 0x04,
0x00, 0x0E, 0x04, 0xB4, 0xD1,
0x0C, 0x00, 0x06, 0x04, 0xB4,
0x00, 0x06, 0x04, 0xB4, 0x00,
0x06, 0x04, 0xB4 };
static unsigned char setup_menu_642[] = { 0xD0, 0x48, 0x81, 0x03, 0x01, 0x25,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0E, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x4D, 0x65, 0x6E, 0x75, 0x20,
0x32, 0x8F, 0x07, 0x04, 0x49,
0x74, 0x65, 0x6D, 0x20, 0x34,
0x8F, 0x07, 0x05, 0x49, 0x74,
0x65, 0x6D, 0x20, 0x35, 0x8F,
0x07, 0x06, 0x49, 0x74, 0x65,
0x6D, 0x20, 0x36, 0xD0, 0x04,
0x00, 0x0E, 0x00, 0xB4, 0xD1,
0x0C, 0x00, 0x06, 0x00, 0xB4,
0x00, 0x06, 0x00, 0xB4, 0x00,
0x06, 0x00, 0xB4 };
static unsigned char setup_menu_643[] = { 0xD0, 0x34, 0x81, 0x03, 0x01, 0x25,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0E, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x4D, 0x65, 0x6E, 0x75, 0x20,
0x33, 0x8F, 0x07, 0x07, 0x49,
0x74, 0x65, 0x6D, 0x20, 0x37,
0x8F, 0x07, 0x08, 0x49, 0x74,
0x65, 0x6D, 0x20, 0x38, 0x8F,
0x07, 0x09, 0x49, 0x74, 0x65,
0x6D, 0x20, 0x39 };
static unsigned char setup_menu_651[] = { 0xD0, 0x48, 0x81, 0x03, 0x01, 0x25,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0E, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x4D, 0x65, 0x6E, 0x75, 0x20,
0x31, 0x8F, 0x07, 0x01, 0x49,
0x74, 0x65, 0x6D, 0x20, 0x31,
0x8F, 0x07, 0x02, 0x49, 0x74,
0x65, 0x6D, 0x20, 0x32, 0x8F,
0x07, 0x03, 0x49, 0x74, 0x65,
0x6D, 0x20, 0x33, 0xD0, 0x04,
0x00, 0x0E, 0x08, 0xB4, 0xD1,
0x0C, 0x00, 0x06, 0x08, 0xB4,
0x00, 0x06, 0x08, 0xB4, 0x00,
0x06, 0x08, 0xB4 };
static unsigned char setup_menu_661[] = { 0xD0, 0x48, 0x81, 0x03, 0x01, 0x25,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0E, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x4D, 0x65, 0x6E, 0x75, 0x20,
0x31, 0x8F, 0x07, 0x01, 0x49,
0x74, 0x65, 0x6D, 0x20, 0x31,
0x8F, 0x07, 0x02, 0x49, 0x74,
0x65, 0x6D, 0x20, 0x32, 0x8F,
0x07, 0x03, 0x49, 0x74, 0x65,
0x6D, 0x20, 0x33, 0xD0, 0x04,
0x00, 0x0E, 0x10, 0xB4, 0xD1,
0x0C, 0x00, 0x06, 0x10, 0xB4,
0x00, 0x06, 0x10, 0xB4, 0x00,
0x06, 0x10, 0xB4 };
static unsigned char setup_menu_671[] = { 0xD0, 0x48, 0x81, 0x03, 0x01, 0x25,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0E, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x4D, 0x65, 0x6E, 0x75, 0x20,
0x31, 0x8F, 0x07, 0x01, 0x49,
0x74, 0x65, 0x6D, 0x20, 0x31,
0x8F, 0x07, 0x02, 0x49, 0x74,
0x65, 0x6D, 0x20, 0x32, 0x8F,
0x07, 0x03, 0x49, 0x74, 0x65,
0x6D, 0x20, 0x33, 0xD0, 0x04,
0x00, 0x0E, 0x20, 0xB4, 0xD1,
0x0C, 0x00, 0x06, 0x20, 0xB4,
0x00, 0x06, 0x20, 0xB4, 0x00,
0x06, 0x20, 0xB4 };
static unsigned char setup_menu_681[] = { 0xD0, 0x48, 0x81, 0x03, 0x01, 0x25,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0E, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x4D, 0x65, 0x6E, 0x75, 0x20,
0x31, 0x8F, 0x07, 0x01, 0x49,
0x74, 0x65, 0x6D, 0x20, 0x31,
0x8F, 0x07, 0x02, 0x49, 0x74,
0x65, 0x6D, 0x20, 0x32, 0x8F,
0x07, 0x03, 0x49, 0x74, 0x65,
0x6D, 0x20, 0x33, 0xD0, 0x04,
0x00, 0x0E, 0x40, 0xB4, 0xD1,
0x0C, 0x00, 0x06, 0x40, 0xB4,
0x00, 0x06, 0x40, 0xB4, 0x00,
0x06, 0x40, 0xB4 };
static unsigned char setup_menu_691[] = { 0xD0, 0x48, 0x81, 0x03, 0x01, 0x25,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0E, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x4D, 0x65, 0x6E, 0x75, 0x20,
0x31, 0x8F, 0x07, 0x01, 0x49,
0x74, 0x65, 0x6D, 0x20, 0x31,
0x8F, 0x07, 0x02, 0x49, 0x74,
0x65, 0x6D, 0x20, 0x32, 0x8F,
0x07, 0x03, 0x49, 0x74, 0x65,
0x6D, 0x20, 0x33, 0xD0, 0x04,
0x00, 0x0E, 0x80, 0xB4, 0xD1,
0x0C, 0x00, 0x06, 0x80, 0xB4,
0x00, 0x06, 0x80, 0xB4, 0x00,
0x06, 0x80, 0xB4 };
static unsigned char setup_menu_6101[] = { 0xD0, 0x46, 0x81, 0x03, 0x01, 0x25,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0C, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x4D, 0x65, 0x6E, 0x75, 0x8F,
0x07, 0x01, 0x49, 0x74, 0x65,
0x6D, 0x20, 0x31, 0x8F, 0x07,
0x02, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x32, 0x8F, 0x07, 0x03,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x33, 0xD0, 0x04, 0x00, 0x0C,
0x00, 0xB4, 0xD1, 0x0C, 0x00,
0x06, 0x00, 0xB4, 0x00, 0x06,
0x00, 0xB4, 0x00, 0x06, 0x00,
0xB4 };
static unsigned char setup_menu_711[] = { 0xD0, 0x81, 0x9C, 0x81, 0x03, 0x01,
0x25, 0x00, 0x82, 0x02, 0x81,
0x82, 0x85, 0x19, 0x80, 0x04,
0x17, 0x04, 0x14, 0x04, 0x20,
0x04, 0x10, 0x04, 0x12, 0x04,
0x21, 0x04, 0x22, 0x04, 0x12,
0x04, 0x23, 0x04, 0x19, 0x04,
0x22, 0x04, 0x15, 0x8F, 0x1C,
0x01, 0x80, 0x04, 0x17, 0x04,
0x14, 0x04, 0x20, 0x04, 0x10,
0x04, 0x12, 0x04, 0x21, 0x04,
0x22, 0x04, 0x12, 0x04, 0x23,
0x04, 0x19, 0x04, 0x22, 0x04,
0x15, 0x00, 0x31, 0x8F, 0x1C,
0x02, 0x80, 0x04, 0x17, 0x04,
0x14, 0x04, 0x20, 0x04, 0x10,
0x04, 0x12, 0x04, 0x21, 0x04,
0x22, 0x04, 0x12, 0x04, 0x23,
0x04, 0x19, 0x04, 0x22, 0x04,
0x15, 0x00, 0x32, 0x8F, 0x1C,
0x03, 0x80, 0x04, 0x17, 0x04,
0x14, 0x04, 0x20, 0x04, 0x10,
0x04, 0x12, 0x04, 0x21, 0x04,
0x22, 0x04, 0x12, 0x04, 0x23,
0x04, 0x19, 0x04, 0x22, 0x04,
0x15, 0x00, 0x33, 0x8F, 0x1C,
0x04, 0x80, 0x04, 0x17, 0x04,
0x14, 0x04, 0x20, 0x04, 0x10,
0x04, 0x12, 0x04, 0x21, 0x04,
0x22, 0x04, 0x12, 0x04, 0x23,
0x04, 0x19, 0x04, 0x22, 0x04,
0x15, 0x00, 0x34 };
static unsigned char setup_menu_712[] = { 0xD0, 0x60, 0x81, 0x03, 0x01, 0x25,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x19, 0x80, 0x04, 0x17,
0x04, 0x14, 0x04, 0x20, 0x04,
0x10, 0x04, 0x12, 0x04, 0x21,
0x04, 0x22, 0x04, 0x12, 0x04,
0x23, 0x04, 0x19, 0x04, 0x22,
0x04, 0x15, 0x8F, 0x1C, 0x11,
0x80, 0x04, 0x17, 0x04, 0x14,
0x04, 0x20, 0x04, 0x10, 0x04,
0x12, 0x04, 0x21, 0x04, 0x22,
0x04, 0x12, 0x04, 0x23, 0x04,
0x19, 0x04, 0x22, 0x04, 0x15,
0x00, 0x35, 0x8F, 0x1C, 0x12,
0x80, 0x04, 0x17, 0x04, 0x14,
0x04, 0x20, 0x04, 0x10, 0x04,
0x12, 0x04, 0x21, 0x04, 0x22,
0x04, 0x12, 0x04, 0x23, 0x04,
0x19, 0x04, 0x22, 0x04, 0x15,
0x00, 0x36 };
static unsigned char setup_menu_713[] = { 0xD0, 0x0D, 0x81, 0x03, 0x01, 0x25,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x00, 0x8F, 0x00 };
static unsigned char setup_menu_811[] = { 0xD0, 0x3C, 0x81, 0x03, 0x01, 0x25,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x09, 0x80, 0x5D, 0xE5,
0x51, 0x77, 0x7B, 0xB1, 0x53,
0x55, 0x8F, 0x08, 0x01, 0x80,
0x98, 0x79, 0x76, 0xEE, 0x4E,
0x00, 0x8F, 0x08, 0x02, 0x80,
0x98, 0x79, 0x76, 0xEE, 0x4E,
0x8C, 0x8F, 0x08, 0x03, 0x80,
0x98, 0x79, 0x76, 0xEE, 0x4E,
0x09, 0x8F, 0x08, 0x04, 0x80,
0x98, 0x79, 0x76, 0xEE, 0x56,
0xDB };
static unsigned char setup_menu_812[] = { 0xD0, 0x20, 0x81, 0x03, 0x01, 0x25,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x09, 0x80, 0x5D, 0xE5,
0x51, 0x77, 0x7B, 0xB1, 0x53,
0x55, 0x8F, 0x04, 0x11, 0x80,
0x4E, 0x00, 0x8F, 0x04, 0x12,
0x80, 0x4E, 0x8C };
static unsigned char setup_menu_813[] = { 0xD0, 0x0D, 0x81, 0x03, 0x01, 0x25,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x00, 0x8F, 0x00 };
static unsigned char setup_menu_911[] = { 0xD0, 0x44, 0x81, 0x03, 0x01, 0x25,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x09, 0x80, 0x00, 0x38,
0x00, 0x30, 0x30, 0xEB, 0x00,
0x30, 0x8F, 0x0A, 0x01, 0x80,
0x00, 0x38, 0x00, 0x30, 0x30,
0xEB, 0x00, 0x31, 0x8F, 0x0A,
0x02, 0x80, 0x00, 0x38, 0x00,
0x30, 0x30, 0xEB, 0x00, 0x32,
0x8F, 0x0A, 0x03, 0x80, 0x00,
0x38, 0x00, 0x30, 0x30, 0xEB,
0x00, 0x33, 0x8F, 0x0A, 0x04,
0x80, 0x00, 0x38, 0x00, 0x30,
0x30, 0xEB, 0x00, 0x34 };
static unsigned char setup_menu_912[] = { 0xD0, 0x2C, 0x81, 0x03, 0x01, 0x25,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x09, 0x80, 0x00, 0x38,
0x00, 0x30, 0x30, 0xEB, 0x00,
0x30, 0x8F, 0x0A, 0x11, 0x80,
0x00, 0x38, 0x00, 0x30, 0x30,
0xEB, 0x00, 0x35, 0x8F, 0x0A,
0x12, 0x80, 0x00, 0x38, 0x00,
0x30, 0x30, 0xEB, 0x00, 0x36 };
static unsigned char setup_menu_913[] = { 0xD0, 0x0D, 0x81, 0x03, 0x01, 0x25,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x00, 0x8F, 0x00 };
static struct setup_menu_test setup_menu_data_111 = {
.pdu = setup_menu_111,
.pdu_len = sizeof(setup_menu_111),
.qualifier = 0x00,
.alpha_id = "Toolkit Menu",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.items[2] = {
.id = 3,
.text = "Item 3"
},
.items[3] = {
.id = 4,
.text = "Item 4"
}
};
static struct setup_menu_test setup_menu_data_112 = {
.pdu = setup_menu_112,
.pdu_len = sizeof(setup_menu_112),
.qualifier = 0x00,
.alpha_id = "Toolkit Menu",
.items[0] = {
.id = 0x11,
.text = "One"
},
.items[1] = {
.id = 0x12,
.text = "Two"
}
};
static struct setup_menu_test setup_menu_data_113 = {
.pdu = setup_menu_113,
.pdu_len = sizeof(setup_menu_113),
.qualifier = 0x00
};
static struct setup_menu_test setup_menu_data_121 = {
.pdu = setup_menu_121,
.pdu_len = sizeof(setup_menu_121),
.qualifier = 0x00,
.alpha_id = "LargeMenu1",
.items[0] = {
.id = 0x50,
.text = "Zero"
},
.items[1] = {
.id = 0x4F,
.text = "One"
},
.items[2] = {
.id = 0x4E,
.text = "Two"
},
.items[3] = {
.id = 0x4D,
.text = "Three"
},
.items[4] = {
.id = 0x4C,
.text = "Four"
},
.items[5] = {
.id = 0x4B,
.text = "Five"
},
.items[6] = {
.id = 0x4A,
.text = "Six"
},
.items[7] = {
.id = 0x49,
.text = "Seven"
},
.items[8] = {
.id = 0x48,
.text = "Eight"
},
.items[9] = {
.id = 0x47,
.text = "Nine"
},
.items[10] = {
.id = 0x46,
.text = "Alpha"
},
.items[11] = {
.id = 0x45,
.text = "Bravo"
},
.items[12] = {
.id = 0x44,
.text = "Charlie"
},
.items[13] = {
.id = 0x43,
.text = "Delta"
},
.items[14] = {
.id = 0x42,
.text = "Echo"
},
.items[15] = {
.id = 0x41,
.text = "Fox-trot"
},
.items[16] = {
.id = 0x40,
.text = "Black"
},
.items[17] = {
.id = 0x3F,
.text = "Brown"
},
.items[18] = {
.id = 0x3E,
.text = "Red"
},
.items[19] = {
.id = 0x3D,
.text = "Orange"
},
.items[20] = {
.id = 0x3C,
.text = "Yellow"
},
.items[21] = {
.id = 0x3B,
.text = "Green"
},
.items[22] = {
.id = 0x3A,
.text = "Blue"
},
.items[23] = {
.id = 0x39,
.text = "Violet"
},
.items[24] = {
.id = 0x38,
.text = "Grey"
},
.items[25] = {
.id = 0x37,
.text = "White"
},
.items[26] = {
.id = 0x36,
.text = "milli"
},
.items[27] = {
.id = 0x35,
.text = "micro"
},
.items[28] = {
.id = 0x34,
.text = "nano"
},
.items[29] = {
.id = 0x33,
.text = "pico"
}
};
static struct setup_menu_test setup_menu_data_122 = {
.pdu = setup_menu_122,
.pdu_len = sizeof(setup_menu_122),
.qualifier = 0x00,
.alpha_id = "LargeMenu2",
.items[0] = {
.id = 0xFF,
.text = "1 Call Forward Unconditional"
},
.items[1] = {
.id = 0xFE,
.text = "2 Call Forward On User Busy"
},
.items[2] = {
.id = 0xFD,
.text = "3 Call Forward On No Reply"
},
.items[3] = {
.id = 0xFC,
.text = "4 Call Forward On User Not Reachable"
},
.items[4] = {
.id = 0xFB,
.text = "5 Barring Of All Outgoing Calls"
},
.items[5] = {
.id = 0xFA,
.text = "6 Barring Of All Outgoing Int Calls"
},
.items[6] = {
.id = 0xF9,
.text = "7 CLI Presentation"
}
};
static struct setup_menu_test setup_menu_data_123 = {
.pdu = setup_menu_123,
.pdu_len = sizeof(setup_menu_123),
.qualifier = 0x00,
.alpha_id = "The SIM shall supply a set of menu items, which shall "
"be integrated with the menu system (or other MMI "
"facility) in order to give the user the opportunity "
"to choose one of these menu items at his own "
"discretion. Each item comprises a sh",
.items[0] = {
.id = 0x01,
.text = "Y"
}
};
static struct setup_menu_test setup_menu_data_211 = {
.pdu = setup_menu_211,
.pdu_len = sizeof(setup_menu_211),
.qualifier = 0x80,
.alpha_id = "Toolkit Menu",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.items[2] = {
.id = 3,
.text = "Item 3"
},
.items[3] = {
.id = 4,
.text = "Item 4"
}
};
static struct setup_menu_test setup_menu_data_311 = {
.pdu = setup_menu_311,
.pdu_len = sizeof(setup_menu_311),
.qualifier = 0x00,
.alpha_id = "Toolkit Menu",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.items[2] = {
.id = 3,
.text = "Item 3"
},
.items[3] = {
.id = 4,
.text = "Item 4"
},
.next_act = {
.list = { STK_COMMAND_TYPE_SEND_SMS,
STK_COMMAND_TYPE_SETUP_CALL,
STK_COMMAND_TYPE_LAUNCH_BROWSER,
STK_COMMAND_TYPE_PROVIDE_LOCAL_INFO },
.len = 4
}
};
static struct setup_menu_test setup_menu_data_411 = {
.pdu = setup_menu_411,
.pdu_len = sizeof(setup_menu_411),
.qualifier = 0x00,
.alpha_id = "Toolkit Menu",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.items[2] = {
.id = 3,
.text = "Item 3"
},
.icon_id = {
.qualifier = STK_ICON_QUALIFIER_TYPE_NON_SELF_EXPLANATORY,
.id = 1
},
.item_icon_id_list = {
.qualifier = STK_ICON_QUALIFIER_TYPE_NON_SELF_EXPLANATORY,
.list = { 5, 5, 5 },
.len = 3
}
};
static struct setup_menu_test setup_menu_data_421 = {
.pdu = setup_menu_421,
.pdu_len = sizeof(setup_menu_421),
.qualifier = 0x00,
.alpha_id = "Toolkit Menu",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.items[2] = {
.id = 3,
.text = "Item 3"
},
.icon_id = {
.qualifier = STK_ICON_QUALIFIER_TYPE_SELF_EXPLANATORY,
.id = 1
},
.item_icon_id_list = {
.qualifier = STK_ICON_QUALIFIER_TYPE_SELF_EXPLANATORY,
.list = { 5, 5, 5 },
.len = 3
}
};
static struct setup_menu_test setup_menu_data_511 = {
.pdu = setup_menu_511,
.pdu_len = sizeof(setup_menu_511),
.qualifier = 0x01,
.alpha_id = "Toolkit Menu",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
}
};
static struct setup_menu_test setup_menu_data_611 = {
.pdu = setup_menu_611,
.pdu_len = sizeof(setup_menu_611),
.qualifier = 0x00,
.alpha_id = "Toolkit Menu 1",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.items[2] = {
.id = 3,
.text = "Item 3"
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x0E, 0x00, 0xB4 }
},
.item_text_attr_list = {
.len = 12,
.list = { 0x00, 0x06, 0x00, 0xB4, 0x00, 0x06, 0x00, 0xB4,
0x00, 0x06, 0x00, 0xB4 }
}
};
static struct setup_menu_test setup_menu_data_612 = {
.pdu = setup_menu_612,
.pdu_len = sizeof(setup_menu_612),
.qualifier = 0x00,
.alpha_id = "Toolkit Menu 2",
.items[0] = {
.id = 4,
.text = "Item 4"
},
.items[1] = {
.id = 5,
.text = "Item 5"
},
.items[2] = {
.id = 6,
.text = "Item 6"
}
};
static struct setup_menu_test setup_menu_data_621 = {
.pdu = setup_menu_621,
.pdu_len = sizeof(setup_menu_621),
.qualifier = 0x00,
.alpha_id = "Toolkit Menu 1",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.items[2] = {
.id = 3,
.text = "Item 3"
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x0E, 0x01, 0xB4 }
},
.item_text_attr_list = {
.len = 12,
.list = { 0x00, 0x06, 0x01, 0xB4, 0x00, 0x06, 0x01, 0xB4,
0x00, 0x06, 0x01, 0xB4 }
}
};
static struct setup_menu_test setup_menu_data_622 = {
.pdu = setup_menu_622,
.pdu_len = sizeof(setup_menu_622),
.qualifier = 0x00,
.alpha_id = "Toolkit Menu 2",
.items[0] = {
.id = 4,
.text = "Item 4"
},
.items[1] = {
.id = 5,
.text = "Item 5"
},
.items[2] = {
.id = 6,
.text = "Item 6"
}
};
/*
* Some problem with data of item #3 in item_text_attr_list
* and the explanation
*/
static struct setup_menu_test setup_menu_data_631 = {
.pdu = setup_menu_631,
.pdu_len = sizeof(setup_menu_631),
.qualifier = 0x00,
.alpha_id = "Toolkit Menu 1",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.items[2] = {
.id = 3,
.text = "Item 3"
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x0E, 0x02, 0xB4 }
},
.item_text_attr_list = {
.len = 12,
.list = { 0x00, 0x06, 0x02, 0xB4, 0x00, 0x06, 0x02, 0xB4,
0x00, 0x06, 0x02, 0xB4 }
}
};
static struct setup_menu_test setup_menu_data_632 = {
.pdu = setup_menu_632,
.pdu_len = sizeof(setup_menu_632),
.qualifier = 0x00,
.alpha_id = "Toolkit Menu 2",
.items[0] = {
.id = 4,
.text = "Item 4"
},
.items[1] = {
.id = 5,
.text = "Item 5"
},
.items[2] = {
.id = 6,
.text = "Item 6"
}
};
static struct setup_menu_test setup_menu_data_641 = {
.pdu = setup_menu_641,
.pdu_len = sizeof(setup_menu_641),
.qualifier = 0x00,
.alpha_id = "Toolkit Menu 1",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.items[2] = {
.id = 3,
.text = "Item 3"
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x0E, 0x04, 0xB4 }
},
.item_text_attr_list = {
.len = 12,
.list = { 0x00, 0x06, 0x04, 0xB4, 0x00, 0x06, 0x04, 0xB4,
0x00, 0x06, 0x04, 0xB4 }
}
};
static struct setup_menu_test setup_menu_data_642 = {
.pdu = setup_menu_642,
.pdu_len = sizeof(setup_menu_642),
.qualifier = 0x00,
.alpha_id = "Toolkit Menu 2",
.items[0] = {
.id = 4,
.text = "Item 4"
},
.items[1] = {
.id = 5,
.text = "Item 5"
},
.items[2] = {
.id = 6,
.text = "Item 6"
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x0E, 0x00, 0xB4 }
},
.item_text_attr_list = {
.len = 12,
.list = { 0x00, 0x06, 0x00, 0xB4, 0x00, 0x06, 0x00, 0xB4,
0x00, 0x06, 0x00, 0xB4 }
}
};
static struct setup_menu_test setup_menu_data_643 = {
.pdu = setup_menu_643,
.pdu_len = sizeof(setup_menu_643),
.qualifier = 0x00,
.alpha_id = "Toolkit Menu 3",
.items[0] = {
.id = 7,
.text = "Item 7"
},
.items[1] = {
.id = 8,
.text = "Item 8"
},
.items[2] = {
.id = 9,
.text = "Item 9"
}
};
static struct setup_menu_test setup_menu_data_651 = {
.pdu = setup_menu_651,
.pdu_len = sizeof(setup_menu_651),
.qualifier = 0x00,
.alpha_id = "Toolkit Menu 1",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.items[2] = {
.id = 3,
.text = "Item 3"
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x0E, 0x08, 0xB4 }
},
.item_text_attr_list = {
.len = 12,
.list = { 0x00, 0x06, 0x08, 0xB4, 0x00, 0x06, 0x08, 0xB4,
0x00, 0x06, 0x08, 0xB4 }
}
};
static struct setup_menu_test setup_menu_data_661 = {
.pdu = setup_menu_661,
.pdu_len = sizeof(setup_menu_661),
.qualifier = 0x00,
.alpha_id = "Toolkit Menu 1",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.items[2] = {
.id = 3,
.text = "Item 3"
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x0E, 0x10, 0xB4 }
},
.item_text_attr_list = {
.len = 12,
.list = { 0x00, 0x06, 0x10, 0xB4, 0x00, 0x06, 0x10, 0xB4,
0x00, 0x06, 0x10, 0xB4 }
}
};
static struct setup_menu_test setup_menu_data_671 = {
.pdu = setup_menu_671,
.pdu_len = sizeof(setup_menu_671),
.qualifier = 0x00,
.alpha_id = "Toolkit Menu 1",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.items[2] = {
.id = 3,
.text = "Item 3"
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x0E, 0x20, 0xB4 }
},
.item_text_attr_list = {
.len = 12,
.list = { 0x00, 0x06, 0x20, 0xB4, 0x00, 0x06, 0x20, 0xB4,
0x00, 0x06, 0x20, 0xB4 }
}
};
static struct setup_menu_test setup_menu_data_681 = {
.pdu = setup_menu_681,
.pdu_len = sizeof(setup_menu_681),
.qualifier = 0x00,
.alpha_id = "Toolkit Menu 1",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.items[2] = {
.id = 3,
.text = "Item 3"
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x0E, 0x40, 0xB4 }
},
.item_text_attr_list = {
.len = 12,
.list = { 0x00, 0x06, 0x40, 0xB4, 0x00, 0x06, 0x40, 0xB4,
0x00, 0x06, 0x40, 0xB4 }
}
};
static struct setup_menu_test setup_menu_data_691 = {
.pdu = setup_menu_691,
.pdu_len = sizeof(setup_menu_691),
.qualifier = 0x00,
.alpha_id = "Toolkit Menu 1",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.items[2] = {
.id = 3,
.text = "Item 3"
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x0E, 0x80, 0xB4 }
},
.item_text_attr_list = {
.len = 12,
.list = { 0x00, 0x06, 0x80, 0xB4, 0x00, 0x06, 0x80, 0xB4,
0x00, 0x06, 0x80, 0xB4 }
}
};
static struct setup_menu_test setup_menu_data_6101 = {
.pdu = setup_menu_6101,
.pdu_len = sizeof(setup_menu_6101),
.qualifier = 0x00,
.alpha_id = "Toolkit Menu",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.items[2] = {
.id = 3,
.text = "Item 3"
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x0C, 0x00, 0xB4 }
},
.item_text_attr_list = {
.len = 12,
.list = { 0x00, 0x06, 0x00, 0xB4, 0x00, 0x06, 0x00, 0xB4,
0x00, 0x06, 0x00, 0xB4 }
}
};
static struct setup_menu_test setup_menu_data_711 = {
.pdu = setup_menu_711,
.pdu_len = sizeof(setup_menu_711),
.qualifier = 0x00,
.alpha_id = "ЗДРАВСТВУЙТЕ",
.items[0] = {
.id = 1,
.text = "ЗДРАВСТВУЙТЕ1"
},
.items[1] = {
.id = 2,
.text = "ЗДРАВСТВУЙТЕ2"
},
.items[2] = {
.id = 3,
.text = "ЗДРАВСТВУЙТЕ3"
},
.items[3] = {
.id = 4,
.text = "ЗДРАВСТВУЙТЕ4"
}
};
static struct setup_menu_test setup_menu_data_712 = {
.pdu = setup_menu_712,
.pdu_len = sizeof(setup_menu_712),
.qualifier = 0x00,
.alpha_id = "ЗДРАВСТВУЙТЕ",
.items[0] = {
.id = 0x11,
.text = "ЗДРАВСТВУЙТЕ5"
},
.items[1] = {
.id = 0x12,
.text = "ЗДРАВСТВУЙТЕ6"
}
};
static struct setup_menu_test setup_menu_data_713 = {
.pdu = setup_menu_713,
.pdu_len = sizeof(setup_menu_713),
.qualifier = 0x00
};
static struct setup_menu_test setup_menu_data_811 = {
.pdu = setup_menu_811,
.pdu_len = sizeof(setup_menu_811),
.qualifier = 0x00,
.alpha_id = "工具箱单",
.items[0] = {
.id = 1,
.text = "项目一"
},
.items[1] = {
.id = 2,
.text = "项目二"
},
.items[2] = {
.id = 3,
.text = "项目三"
},
.items[3] = {
.id = 4,
.text = "项目四"
}
};
static struct setup_menu_test setup_menu_data_812 = {
.pdu = setup_menu_812,
.pdu_len = sizeof(setup_menu_812),
.qualifier = 0x00,
.alpha_id = "工具箱单",
.items[0] = {
.id = 0x11,
.text = ""
},
.items[1] = {
.id = 0x12,
.text = ""
}
};
static struct setup_menu_test setup_menu_data_813 = {
.pdu = setup_menu_813,
.pdu_len = sizeof(setup_menu_813),
.qualifier = 0x00
};
static struct setup_menu_test setup_menu_data_911 = {
.pdu = setup_menu_911,
.pdu_len = sizeof(setup_menu_911),
.qualifier = 0x00,
.alpha_id = "80ル0",
.items[0] = {
.id = 1,
.text = "80ル1"
},
.items[1] = {
.id = 2,
.text = "80ル2"
},
.items[2] = {
.id = 3,
.text = "80ル3"
},
.items[3] = {
.id = 4,
.text = "80ル4"
}
};
static struct setup_menu_test setup_menu_data_912 = {
.pdu = setup_menu_912,
.pdu_len = sizeof(setup_menu_912),
.qualifier = 0x00,
.alpha_id = "80ル0",
.items[0] = {
.id = 0x11,
.text = "80ル5"
},
.items[1] = {
.id = 0x12,
.text = "80ル6"
}
};
static struct setup_menu_test setup_menu_data_913 = {
.pdu = setup_menu_913,
.pdu_len = sizeof(setup_menu_913),
.qualifier = 0x00
};
/* Defined in TS 102.384 Section 27.22.4.7 */
static void test_setup_menu(gconstpointer data)
{
const struct setup_menu_test *test = data;
struct stk_command *command;
command = stk_command_new_from_pdu(test->pdu, test->pdu_len);
g_assert(command);
g_assert(command->number == 1);
g_assert(command->type == STK_COMMAND_TYPE_SETUP_MENU);
g_assert(command->qualifier == test->qualifier);
g_assert(command->src == STK_DEVICE_IDENTITY_TYPE_UICC);
g_assert(command->dst == STK_DEVICE_IDENTITY_TYPE_TERMINAL);
if (test->alpha_id)
g_assert(command->setup_menu.alpha_id);
check_alpha_id(command->setup_menu.alpha_id, test->alpha_id);
check_items(command->setup_menu.items, test->items);
check_items_next_action_indicator(&command->setup_menu.next_act,
&test->next_act);
check_icon_id(&command->setup_menu.icon_id, &test->icon_id);
check_item_icon_id_list(&command->setup_menu.item_icon_id_list,
&test->item_icon_id_list);
check_text_attr(&command->setup_menu.text_attr, &test->text_attr);
check_item_text_attribute_list(&command->setup_menu.item_text_attr_list,
&test->item_text_attr_list);
stk_command_free(command);
}
struct select_item_test {
const unsigned char *pdu;
unsigned int pdu_len;
unsigned char qualifier;
char *alpha_id;
struct stk_item items[MAX_ITEM];
struct stk_items_next_action_indicator next_act;
unsigned char item_id;
struct stk_icon_id icon_id;
struct stk_item_icon_id_list item_icon_id_list;
struct stk_text_attribute text_attr;
struct stk_item_text_attribute_list item_text_attr_list;
struct stk_frame_id frame_id;
};
static unsigned char select_item_111[] = { 0xD0, 0x3D, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0E, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x8F, 0x07, 0x01, 0x49,
0x74, 0x65, 0x6D, 0x20, 0x31,
0x8F, 0x07, 0x02, 0x49, 0x74,
0x65, 0x6D, 0x20, 0x32, 0x8F,
0x07, 0x03, 0x49, 0x74, 0x65,
0x6D, 0x20, 0x33, 0x8F, 0x07,
0x04, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x34 };
static unsigned char select_item_121[] = { 0xD0, 0x81, 0xFC, 0x81, 0x03, 0x01,
0x24, 0x00, 0x82, 0x02, 0x81,
0x82, 0x85, 0x0A, 0x4C, 0x61,
0x72, 0x67, 0x65, 0x4D, 0x65,
0x6E, 0x75, 0x31, 0x8F, 0x05,
0x50, 0x5A, 0x65, 0x72, 0x6F,
0x8F, 0x04, 0x4F, 0x4F, 0x6E,
0x65, 0x8F, 0x04, 0x4E, 0x54,
0x77, 0x6F, 0x8F, 0x06, 0x4D,
0x54, 0x68, 0x72, 0x65, 0x65,
0x8F, 0x05, 0x4C, 0x46, 0x6F,
0x75, 0x72, 0x8F, 0x05, 0x4B,
0x46, 0x69, 0x76, 0x65, 0x8F,
0x04, 0x4A, 0x53, 0x69, 0x78,
0x8F, 0x06, 0x49, 0x53, 0x65,
0x76, 0x65, 0x6E, 0x8F, 0x06,
0x48, 0x45, 0x69, 0x67, 0x68,
0x74, 0x8F, 0x05, 0x47, 0x4E,
0x69, 0x6E, 0x65, 0x8F, 0x06,
0x46, 0x41, 0x6C, 0x70, 0x68,
0x61, 0x8F, 0x06, 0x45, 0x42,
0x72, 0x61, 0x76, 0x6F, 0x8F,
0x08, 0x44, 0x43, 0x68, 0x61,
0x72, 0x6C, 0x69, 0x65, 0x8F,
0x06, 0x43, 0x44, 0x65, 0x6C,
0x74, 0x61, 0x8F, 0x05, 0x42,
0x45, 0x63, 0x68, 0x6F, 0x8F,
0x09, 0x41, 0x46, 0x6F, 0x78,
0x2D, 0x74, 0x72, 0x6F, 0x74,
0x8F, 0x06, 0x40, 0x42, 0x6C,
0x61, 0x63, 0x6B, 0x8F, 0x06,
0x3F, 0x42, 0x72, 0x6F, 0x77,
0x6E, 0x8F, 0x04, 0x3E, 0x52,
0x65, 0x64, 0x8F, 0x07, 0x3D,
0x4F, 0x72, 0x61, 0x6E, 0x67,
0x65, 0x8F, 0x07, 0x3C, 0x59,
0x65, 0x6C, 0x6C, 0x6F, 0x77,
0x8F, 0x06, 0x3B, 0x47, 0x72,
0x65, 0x65, 0x6E, 0x8F, 0x05,
0x3A, 0x42, 0x6C, 0x75, 0x65,
0x8F, 0x07, 0x39, 0x56, 0x69,
0x6F, 0x6C, 0x65, 0x74, 0x8F,
0x05, 0x38, 0x47, 0x72, 0x65,
0x79, 0x8F, 0x06, 0x37, 0x57,
0x68, 0x69, 0x74, 0x65, 0x8F,
0x06, 0x36, 0x6D, 0x69, 0x6C,
0x6C, 0x69, 0x8F, 0x06, 0x35,
0x6D, 0x69, 0x63, 0x72, 0x6F,
0x8F, 0x05, 0x34, 0x6E, 0x61,
0x6E, 0x6F, 0x8F, 0x05, 0x33,
0x70, 0x69, 0x63, 0x6F };
static unsigned char select_item_131[] = { 0xD0, 0x81, 0xFB, 0x81, 0x03, 0x01,
0x24, 0x00, 0x82, 0x02, 0x81,
0x82, 0x85, 0x0A, 0x4C, 0x61,
0x72, 0x67, 0x65, 0x4D, 0x65,
0x6E, 0x75, 0x32, 0x8F, 0x1E,
0xFF, 0x43, 0x61, 0x6C, 0x6C,
0x20, 0x46, 0x6F, 0x72, 0x77,
0x61, 0x72, 0x64, 0x69, 0x6E,
0x67, 0x20, 0x55, 0x6E, 0x63,
0x6F, 0x6E, 0x64, 0x69, 0x74,
0x69, 0x6F, 0x6E, 0x61, 0x6C,
0x8F, 0x1D, 0xFE, 0x43, 0x61,
0x6C, 0x6C, 0x20, 0x46, 0x6F,
0x72, 0x77, 0x61, 0x72, 0x64,
0x69, 0x6E, 0x67, 0x20, 0x4F,
0x6E, 0x20, 0x55, 0x73, 0x65,
0x72, 0x20, 0x42, 0x75, 0x73,
0x79, 0x8F, 0x1C, 0xFD, 0x43,
0x61, 0x6C, 0x6C, 0x20, 0x46,
0x6F, 0x72, 0x77, 0x61, 0x72,
0x64, 0x69, 0x6E, 0x67, 0x20,
0x4F, 0x6E, 0x20, 0x4E, 0x6F,
0x20, 0x52, 0x65, 0x70, 0x6C,
0x79, 0x8F, 0x26, 0xFC, 0x43,
0x61, 0x6C, 0x6C, 0x20, 0x46,
0x6F, 0x72, 0x77, 0x61, 0x72,
0x64, 0x69, 0x6E, 0x67, 0x20,
0x4F, 0x6E, 0x20, 0x55, 0x73,
0x65, 0x72, 0x20, 0x4E, 0x6F,
0x74, 0x20, 0x52, 0x65, 0x61,
0x63, 0x68, 0x61, 0x62, 0x6C,
0x65, 0x8F, 0x1E, 0xFB, 0x42,
0x61, 0x72, 0x72, 0x69, 0x6E,
0x67, 0x20, 0x4F, 0x66, 0x20,
0x41, 0x6C, 0x6C, 0x20, 0x4F,
0x75, 0x74, 0x67, 0x6F, 0x69,
0x6E, 0x67, 0x20, 0x43, 0x61,
0x6C, 0x6C, 0x73, 0x8F, 0x2C,
0xFA, 0x42, 0x61, 0x72, 0x72,
0x69, 0x6E, 0x67, 0x20, 0x4F,
0x66, 0x20, 0x41, 0x6C, 0x6C,
0x20, 0x4F, 0x75, 0x74, 0x67,
0x6F, 0x69, 0x6E, 0x67, 0x20,
0x49, 0x6E, 0x74, 0x65, 0x72,
0x6E, 0x61, 0x74, 0x69, 0x6F,
0x6E, 0x61, 0x6C, 0x20, 0x43,
0x61, 0x6C, 0x6C, 0x73, 0x8F,
0x11, 0xF9, 0x43, 0x4C, 0x49,
0x20, 0x50, 0x72, 0x65, 0x73,
0x65, 0x6E, 0x74, 0x61, 0x74,
0x69, 0x6F, 0x6E };
static unsigned char select_item_141[] = { 0xD0, 0x22, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0B, 0x53, 0x65, 0x6C,
0x65, 0x63, 0x74, 0x20, 0x49,
0x74, 0x65, 0x6D, 0x8F, 0x04,
0x11, 0x4F, 0x6E, 0x65, 0x8F,
0x04, 0x12, 0x54, 0x77, 0x6F };
static unsigned char select_item_151[] = { 0xD0, 0x81, 0xFD, 0x81, 0x03, 0x01,
0x24, 0x00, 0x82, 0x02, 0x81,
0x82, 0x85, 0x81, 0xED, 0x54,
0x68, 0x65, 0x20, 0x53, 0x49,
0x4D, 0x20, 0x73, 0x68, 0x61,
0x6C, 0x6C, 0x20, 0x73, 0x75,
0x70, 0x70, 0x6C, 0x79, 0x20,
0x61, 0x20, 0x73, 0x65, 0x74,
0x20, 0x6F, 0x66, 0x20, 0x69,
0x74, 0x65, 0x6D, 0x73, 0x20,
0x66, 0x72, 0x6F, 0x6D, 0x20,
0x77, 0x68, 0x69, 0x63, 0x68,
0x20, 0x74, 0x68, 0x65, 0x20,
0x75, 0x73, 0x65, 0x72, 0x20,
0x6D, 0x61, 0x79, 0x20, 0x63,
0x68, 0x6F, 0x6F, 0x73, 0x65,
0x20, 0x6F, 0x6E, 0x65, 0x2E,
0x20, 0x45, 0x61, 0x63, 0x68,
0x20, 0x69, 0x74, 0x65, 0x6D,
0x20, 0x63, 0x6F, 0x6D, 0x70,
0x72, 0x69, 0x73, 0x65, 0x73,
0x20, 0x61, 0x20, 0x73, 0x68,
0x6F, 0x72, 0x74, 0x20, 0x69,
0x64, 0x65, 0x6E, 0x74, 0x69,
0x66, 0x69, 0x65, 0x72, 0x20,
0x28, 0x75, 0x73, 0x65, 0x64,
0x20, 0x74, 0x6F, 0x20, 0x69,
0x6E, 0x64, 0x69, 0x63, 0x61,
0x74, 0x65, 0x20, 0x74, 0x68,
0x65, 0x20, 0x73, 0x65, 0x6C,
0x65, 0x63, 0x74, 0x69, 0x6F,
0x6E, 0x29, 0x20, 0x61, 0x6E,
0x64, 0x20, 0x61, 0x20, 0x74,
0x65, 0x78, 0x74, 0x20, 0x73,
0x74, 0x72, 0x69, 0x6E, 0x67,
0x2E, 0x20, 0x4F, 0x70, 0x74,
0x69, 0x6F, 0x6E, 0x61, 0x6C,
0x6C, 0x79, 0x20, 0x74, 0x68,
0x65, 0x20, 0x53, 0x49, 0x4D,
0x20, 0x6D, 0x61, 0x79, 0x20,
0x69, 0x6E, 0x63, 0x6C, 0x75,
0x64, 0x65, 0x20, 0x61, 0x6E,
0x20, 0x61, 0x6C, 0x70, 0x68,
0x61, 0x20, 0x69, 0x64, 0x65,
0x6E, 0x74, 0x69, 0x66, 0x69,
0x65, 0x72, 0x2E, 0x20, 0x54,
0x68, 0x65, 0x20, 0x61, 0x6C,
0x70, 0x68, 0x61, 0x20, 0x69,
0x64, 0x65, 0x6E, 0x74, 0x69,
0x66, 0x69, 0x65, 0x72, 0x20,
0x69, 0x8F, 0x02, 0x01, 0x59 };
static unsigned char select_item_161[] = { 0xD0, 0x81, 0xF3, 0x81, 0x03, 0x01,
0x24, 0x00, 0x82, 0x02, 0x81,
0x82, 0x85, 0x0A, 0x30, 0x4C,
0x61, 0x72, 0x67, 0x65, 0x4D,
0x65, 0x6E, 0x75, 0x8F, 0x1D,
0xFF, 0x31, 0x20, 0x43, 0x61,
0x6C, 0x6C, 0x20, 0x46, 0x6F,
0x72, 0x77, 0x61, 0x72, 0x64,
0x20, 0x55, 0x6E, 0x63, 0x6F,
0x6E, 0x64, 0x69, 0x74, 0x69,
0x6F, 0x6E, 0x61, 0x6C, 0x8F,
0x1C, 0xFE, 0x32, 0x20, 0x43,
0x61, 0x6C, 0x6C, 0x20, 0x46,
0x6F, 0x72, 0x77, 0x61, 0x72,
0x64, 0x20, 0x4F, 0x6E, 0x20,
0x55, 0x73, 0x65, 0x72, 0x20,
0x42, 0x75, 0x73, 0x79, 0x8F,
0x1B, 0xFD, 0x33, 0x20, 0x43,
0x61, 0x6C, 0x6C, 0x20, 0x46,
0x6F, 0x72, 0x77, 0x61, 0x72,
0x64, 0x20, 0x4F, 0x6E, 0x20,
0x4E, 0x6F, 0x20, 0x52, 0x65,
0x70, 0x6C, 0x79, 0x8F, 0x25,
0xFC, 0x34, 0x20, 0x43, 0x61,
0x6C, 0x6C, 0x20, 0x46, 0x6F,
0x72, 0x77, 0x61, 0x72, 0x64,
0x20, 0x4F, 0x6E, 0x20, 0x55,
0x73, 0x65, 0x72, 0x20, 0x4E,
0x6F, 0x74, 0x20, 0x52, 0x65,
0x61, 0x63, 0x68, 0x61, 0x62,
0x6C, 0x65, 0x8F, 0x20, 0xFB,
0x35, 0x20, 0x42, 0x61, 0x72,
0x72, 0x69, 0x6E, 0x67, 0x20,
0x4F, 0x66, 0x20, 0x41, 0x6C,
0x6C, 0x20, 0x4F, 0x75, 0x74,
0x67, 0x6F, 0x69, 0x6E, 0x67,
0x20, 0x43, 0x61, 0x6C, 0x6C,
0x73, 0x8F, 0x24, 0xFA, 0x36,
0x20, 0x42, 0x61, 0x72, 0x72,
0x69, 0x6E, 0x67, 0x20, 0x4F,
0x66, 0x20, 0x41, 0x6C, 0x6C,
0x20, 0x4F, 0x75, 0x74, 0x67,
0x6F, 0x69, 0x6E, 0x67, 0x20,
0x49, 0x6E, 0x74, 0x20, 0x43,
0x61, 0x6C, 0x6C, 0x73, 0x8F,
0x13, 0xF9, 0x37, 0x20, 0x43,
0x4C, 0x49, 0x20, 0x50, 0x72,
0x65, 0x73, 0x65, 0x6E, 0x74,
0x61, 0x74, 0x69, 0x6F, 0x6E };
static unsigned char select_item_211[] = { 0xD0, 0x39, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0E, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x8F, 0x07, 0x01, 0x49,
0x74, 0x65, 0x6D, 0x20, 0x31,
0x8F, 0x07, 0x02, 0x49, 0x74,
0x65, 0x6D, 0x20, 0x32, 0x8F,
0x07, 0x03, 0x49, 0x74, 0x65,
0x6D, 0x20, 0x33, 0x18, 0x03,
0x13, 0x10, 0x26 };
static unsigned char select_item_311[] = { 0xD0, 0x37, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0E, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x8F, 0x07, 0x01, 0x49,
0x74, 0x65, 0x6D, 0x20, 0x31,
0x8F, 0x07, 0x02, 0x49, 0x74,
0x65, 0x6D, 0x20, 0x32, 0x8F,
0x07, 0x03, 0x49, 0x74, 0x65,
0x6D, 0x20, 0x33, 0x90, 0x01,
0x02 };
static unsigned char select_item_411[] = { 0xD0, 0x34, 0x81, 0x03, 0x01, 0x24,
0x80, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0E, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x8F, 0x07, 0x01, 0x49,
0x74, 0x65, 0x6D, 0x20, 0x31,
0x8F, 0x07, 0x02, 0x49, 0x74,
0x65, 0x6D, 0x20, 0x32, 0x8F,
0x07, 0x03, 0x49, 0x74, 0x65,
0x6D, 0x20, 0x33 };
static unsigned char select_item_511[] = { 0xD0, 0x3E, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0E, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x8F, 0x07, 0x01, 0x49,
0x74, 0x65, 0x6D, 0x20, 0x31,
0x8F, 0x07, 0x02, 0x49, 0x74,
0x65, 0x6D, 0x20, 0x32, 0x8F,
0x07, 0x03, 0x49, 0x74, 0x65,
0x6D, 0x20, 0x33, 0x9E, 0x02,
0x01, 0x01, 0x9F, 0x04, 0x01,
0x05, 0x05, 0x05 };
static unsigned char select_item_521[] = { 0xD0, 0x3E, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0E, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x8F, 0x07, 0x01, 0x49,
0x74, 0x65, 0x6D, 0x20, 0x31,
0x8F, 0x07, 0x02, 0x49, 0x74,
0x65, 0x6D, 0x20, 0x32, 0x8F,
0x07, 0x03, 0x49, 0x74, 0x65,
0x6D, 0x20, 0x33, 0x9E, 0x02,
0x00, 0x01, 0x9F, 0x04, 0x00,
0x05, 0x05, 0x05 };
static unsigned char select_item_611[] = { 0xD0, 0x34, 0x81, 0x03, 0x01, 0x24,
0x03, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0E, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x8F, 0x07, 0x01, 0x49,
0x74, 0x65, 0x6D, 0x20, 0x31,
0x8F, 0x07, 0x02, 0x49, 0x74,
0x65, 0x6D, 0x20, 0x32, 0x8F,
0x07, 0x03, 0x49, 0x74, 0x65,
0x6D, 0x20, 0x33 };
static unsigned char select_item_621[] = { 0xD0, 0x34, 0x81, 0x03, 0x01, 0x24,
0x01, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0E, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x8F, 0x07, 0x01, 0x49,
0x74, 0x65, 0x6D, 0x20, 0x31,
0x8F, 0x07, 0x02, 0x49, 0x74,
0x65, 0x6D, 0x20, 0x32, 0x8F,
0x07, 0x03, 0x49, 0x74, 0x65,
0x6D, 0x20, 0x33 };
static unsigned char select_item_711[] = { 0xD0, 0x2B, 0x81, 0x03, 0x01, 0x24,
0x04, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0E, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x8F, 0x07, 0x01, 0x49,
0x74, 0x65, 0x6D, 0x20, 0x31,
0x8F, 0x07, 0x02, 0x49, 0x74,
0x65, 0x6D, 0x20, 0x32 };
static unsigned char select_item_811[] = { 0xD0, 0x30, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0A, 0x3C, 0x54, 0x49,
0x4D, 0x45, 0x2D, 0x4F, 0x55,
0x54, 0x3E, 0x8F, 0x07, 0x01,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x31, 0x8F, 0x07, 0x02, 0x49,
0x74, 0x65, 0x6D, 0x20, 0x32,
0x8F, 0x07, 0x03, 0x49, 0x74,
0x65, 0x6D, 0x20, 0x33 };
static unsigned char select_item_911[] = { 0xD0, 0x3D, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x10, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x20, 0x31, 0x8F, 0x07,
0x01, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x31, 0x8F, 0x07, 0x02,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x32, 0xD0, 0x04, 0x00, 0x10,
0x00, 0xB4, 0xD1, 0x08, 0x00,
0x06, 0x00, 0xB4, 0x00, 0x06,
0x00, 0xB4 };
static unsigned char select_item_912[] = { 0xD0, 0x2D, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x10, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x20, 0x32, 0x8F, 0x07,
0x01, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x33, 0x8F, 0x07, 0x02,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x34 };
static unsigned char select_item_921[] = { 0xD0, 0x3D, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x10, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x20, 0x31, 0x8F, 0x07,
0x01, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x31, 0x8F, 0x07, 0x02,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x32, 0xD0, 0x04, 0x00, 0x10,
0x01, 0xB4, 0xD1, 0x08, 0x00,
0x06, 0x01, 0xB4, 0x00, 0x06,
0x01, 0xB4 };
static unsigned char select_item_922[] = { 0xD0, 0x2D, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x10, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x20, 0x32, 0x8F, 0x07,
0x01, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x33, 0x8F, 0x07, 0x02,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x34 };
static unsigned char select_item_931[] = { 0xD0, 0x3D, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x10, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x20, 0x31, 0x8F, 0x07,
0x01, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x31, 0x8F, 0x07, 0x02,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x32, 0xD0, 0x04, 0x00, 0x10,
0x02, 0xB4, 0xD1, 0x08, 0x00,
0x06, 0x02, 0xB4, 0x00, 0x06,
0x02, 0xB4 };
static unsigned char select_item_932[] = { 0xD0, 0x2D, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x10, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x20, 0x32, 0x8F, 0x07,
0x01, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x33, 0x8F, 0x07, 0x02,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x34 };
static unsigned char select_item_941[] = { 0xD0, 0x3D, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x10, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x20, 0x31, 0x8F, 0x07,
0x01, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x31, 0x8F, 0x07, 0x02,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x32, 0xD0, 0x04, 0x00, 0x10,
0x04, 0xB4, 0xD1, 0x08, 0x00,
0x06, 0x04, 0xB4, 0x00, 0x06,
0x04, 0xB4 };
static unsigned char select_item_942[] = { 0xD0, 0x3D, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x10, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x20, 0x32, 0x8F, 0x07,
0x01, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x33, 0x8F, 0x07, 0x02,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x34, 0xD0, 0x04, 0x00, 0x10,
0x00, 0xB4, 0xD1, 0x08, 0x00,
0x06, 0x00, 0xB4, 0x00, 0x06,
0x00, 0xB4 };
static unsigned char select_item_943[] = { 0xD0, 0x2D, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x10, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x20, 0x33, 0x8F, 0x07,
0x01, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x35, 0x8F, 0x07, 0x02,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x36 };
static unsigned char select_item_951[] = { 0xD0, 0x3D, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x10, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x20, 0x31, 0x8F, 0x07,
0x01, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x31, 0x8F, 0x07, 0x02,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x32, 0xD0, 0x04, 0x00, 0x10,
0x08, 0xB4, 0xD1, 0x08, 0x00,
0x06, 0x08, 0xB4, 0x00, 0x06,
0x08, 0xB4 };
static unsigned char select_item_952[] = { 0xD0, 0x3D, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x10, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x20, 0x32, 0x8F, 0x07,
0x01, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x33, 0x8F, 0x07, 0x02,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x34, 0xD0, 0x04, 0x00, 0x10,
0x00, 0xB4, 0xD1, 0x08, 0x00,
0x06, 0x00, 0xB4, 0x00, 0x06,
0x00, 0xB4 };
static unsigned char select_item_953[] = { 0xD0, 0x2D, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x10, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x20, 0x33, 0x8F, 0x07,
0x01, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x35, 0x8F, 0x07, 0x02,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x36 };
static unsigned char select_item_961[] = { 0xD0, 0x3D, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x10, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x20, 0x31, 0x8F, 0x07,
0x01, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x31, 0x8F, 0x07, 0x02,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x32, 0xD0, 0x04, 0x00, 0x10,
0x10, 0xB4, 0xD1, 0x08, 0x00,
0x06, 0x10, 0xB4, 0x00, 0x06,
0x10, 0xB4 };
static unsigned char select_item_962[] = { 0xD0, 0x3D, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x10, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x20, 0x32, 0x8F, 0x07,
0x01, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x33, 0x8F, 0x07, 0x02,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x34, 0xD0, 0x04, 0x00, 0x10,
0x00, 0xB4, 0xD1, 0x08, 0x00,
0x06, 0x00, 0xB4, 0x00, 0x06,
0x00, 0xB4 };
static unsigned char select_item_963[] = { 0xD0, 0x2D, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x10, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x20, 0x33, 0x8F, 0x07,
0x01, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x35, 0x8F, 0x07, 0x02,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x36 };
static unsigned char select_item_971[] = { 0xD0, 0x3D, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x10, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x20, 0x31, 0x8F, 0x07,
0x01, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x31, 0x8F, 0x07, 0x02,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x32, 0xD0, 0x04, 0x00, 0x10,
0x20, 0xB4, 0xD1, 0x08, 0x00,
0x06, 0x20, 0xB4, 0x00, 0x06,
0x20, 0xB4 };
static unsigned char select_item_972[] = { 0xD0, 0x3D, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x10, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x20, 0x32, 0x8F, 0x07,
0x01, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x33, 0x8F, 0x07, 0x02,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x34, 0xD0, 0x04, 0x00, 0x10,
0x00, 0xB4, 0xD1, 0x08, 0x00,
0x06, 0x00, 0xB4, 0x00, 0x06,
0x00, 0xB4 };
static unsigned char select_item_973[] = { 0xD0, 0x2D, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x10, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x20, 0x33, 0x8F, 0x07,
0x01, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x35, 0x8F, 0x07, 0x02,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x36 };
static unsigned char select_item_981[] = { 0xD0, 0x3D, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x10, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x20, 0x31, 0x8F, 0x07,
0x01, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x31, 0x8F, 0x07, 0x02,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x32, 0xD0, 0x04, 0x00, 0x10,
0x40, 0xB4, 0xD1, 0x08, 0x00,
0x06, 0x40, 0xB4, 0x00, 0x06,
0x40, 0xB4 };
static unsigned char select_item_982[] = { 0xD0, 0x3D, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x10, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x20, 0x32, 0x8F, 0x07,
0x01, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x33, 0x8F, 0x07, 0x02,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x34, 0xD0, 0x04, 0x00, 0x10,
0x00, 0xB4, 0xD1, 0x08, 0x00,
0x06, 0x00, 0xB4, 0x00, 0x06,
0x00, 0xB4 };
static unsigned char select_item_983[] = { 0xD0, 0x2D, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x10, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x20, 0x33, 0x8F, 0x07,
0x01, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x35, 0x8F, 0x07, 0x02,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x36 };
static unsigned char select_item_991[] = { 0xD0, 0x3D, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x10, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x20, 0x31, 0x8F, 0x07,
0x01, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x31, 0x8F, 0x07, 0x02,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x32, 0xD0, 0x04, 0x00, 0x10,
0x80, 0xB4, 0xD1, 0x08, 0x00,
0x06, 0x80, 0xB4, 0x00, 0x06,
0x80, 0xB4 };
static unsigned char select_item_992[] = { 0xD0, 0x3D, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x10, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x20, 0x32, 0x8F, 0x07,
0x01, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x33, 0x8F, 0x07, 0x02,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x34, 0xD0, 0x04, 0x00, 0x10,
0x00, 0xB4, 0xD1, 0x08, 0x00,
0x06, 0x00, 0xB4, 0x00, 0x06,
0x00, 0xB4 };
static unsigned char select_item_993[] = { 0xD0, 0x2D, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x10, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x20, 0x33, 0x8F, 0x07,
0x01, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x35, 0x8F, 0x07, 0x02,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x36 };
static unsigned char select_item_9101[] = { 0xD0, 0x3D, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x10, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x20, 0x31, 0x8F, 0x07,
0x01, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x31, 0x8F, 0x07, 0x02,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x32, 0xD0, 0x04, 0x00, 0x10,
0x00, 0xB4, 0xD1, 0x08, 0x00,
0x06, 0x00, 0xB4, 0x00, 0x06,
0x00, 0xB4 };
static unsigned char select_item_9102[] = { 0xD0, 0x2D, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x10, 0x54, 0x6F, 0x6F,
0x6C, 0x6B, 0x69, 0x74, 0x20,
0x53, 0x65, 0x6C, 0x65, 0x63,
0x74, 0x20, 0x32, 0x8F, 0x07,
0x01, 0x49, 0x74, 0x65, 0x6D,
0x20, 0x33, 0x8F, 0x07, 0x02,
0x49, 0x74, 0x65, 0x6D, 0x20,
0x34 };
static unsigned char select_item_1011[] = { 0xD0, 0x7E, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x19, 0x80, 0x04, 0x17,
0x04, 0x14, 0x04, 0x20, 0x04,
0x10, 0x04, 0x12, 0x04, 0x21,
0x04, 0x22, 0x04, 0x12, 0x04,
0x23, 0x04, 0x19, 0x04, 0x22,
0x04, 0x15, 0x8F, 0x1C, 0x01,
0x80, 0x04, 0x17, 0x04, 0x14,
0x04, 0x20, 0x04, 0x10, 0x04,
0x12, 0x04, 0x21, 0x04, 0x22,
0x04, 0x12, 0x04, 0x23, 0x04,
0x19, 0x04, 0x22, 0x04, 0x15,
0x00, 0x31, 0x8F, 0x1C, 0x02,
0x80, 0x04, 0x17, 0x04, 0x14,
0x04, 0x20, 0x04, 0x10, 0x04,
0x12, 0x04, 0x21, 0x04, 0x22,
0x04, 0x12, 0x04, 0x23, 0x04,
0x19, 0x04, 0x22, 0x04, 0x15,
0x00, 0x32, 0x8F, 0x1C, 0x03,
0x80, 0x04, 0x17, 0x04, 0x14,
0x04, 0x20, 0x04, 0x10, 0x04,
0x12, 0x04, 0x21, 0x04, 0x22,
0x04, 0x12, 0x04, 0x23, 0x04,
0x19, 0x04, 0x22, 0x04, 0x15,
0x00, 0x33 };
static unsigned char select_item_1021[] = { 0xD0, 0x53, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0F, 0x81, 0x0C, 0x08,
0x97, 0x94, 0xA0, 0x90, 0x92,
0xA1, 0xA2, 0x92, 0xA3, 0x99,
0xA2, 0x95, 0x8F, 0x11, 0x01,
0x81, 0x0D, 0x08, 0x97, 0x94,
0xA0, 0x90, 0x92, 0xA1, 0xA2,
0x92, 0xA3, 0x99, 0xA2, 0x95,
0x31, 0x8F, 0x11, 0x02, 0x81,
0x0D, 0x08, 0x97, 0x94, 0xA0,
0x90, 0x92, 0xA1, 0xA2, 0x92,
0xA3, 0x99, 0xA2, 0x95, 0x32,
0x8F, 0x11, 0x03, 0x81, 0x0D,
0x08, 0x97, 0x94, 0xA0, 0x90,
0x92, 0xA1, 0xA2, 0x92, 0xA3,
0x99, 0xA2, 0x95, 0x33 };
static unsigned char select_item_1031[] = { 0xD0, 0x57, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x10, 0x82, 0x0C, 0x04,
0x10, 0x87, 0x84, 0x90, 0x80,
0x82, 0x91, 0x92, 0x82, 0x93,
0x89, 0x92, 0x85, 0x8F, 0x12,
0x01, 0x82, 0x0D, 0x04, 0x10,
0x87, 0x84, 0x90, 0x80, 0x82,
0x91, 0x92, 0x82, 0x93, 0x89,
0x92, 0x85, 0x31, 0x8F, 0x12,
0x02, 0x82, 0x0D, 0x04, 0x10,
0x87, 0x84, 0x90, 0x80, 0x82,
0x91, 0x92, 0x82, 0x93, 0x89,
0x92, 0x85, 0x32, 0x8F, 0x12,
0x03, 0x82, 0x0D, 0x04, 0x10,
0x87, 0x84, 0x90, 0x80, 0x82,
0x91, 0x92, 0x82, 0x93, 0x89,
0x92, 0x85, 0x33 };
static unsigned char select_item_1111[] = { 0xD0, 0x3E, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x0B, 0x80, 0x5D, 0xE5,
0x51, 0x77, 0x7B, 0xB1, 0x90,
0x09, 0x62, 0xE9, 0x8F, 0x08,
0x01, 0x80, 0x98, 0x79, 0x76,
0xEE, 0x4E, 0x00, 0x8F, 0x08,
0x02, 0x80, 0x98, 0x79, 0x76,
0xEE, 0x4E, 0x8C, 0x8F, 0x08,
0x03, 0x80, 0x98, 0x79, 0x76,
0xEE, 0x4E, 0x09, 0x8F, 0x08,
0x04, 0x80, 0x98, 0x79, 0x76,
0xEE, 0x56, 0xDB };
static unsigned char select_item_1211[] = { 0xD0, 0x38, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x09, 0x80, 0x00, 0x38,
0x00, 0x30, 0x30, 0xEB, 0x00,
0x30, 0x8F, 0x0A, 0x01, 0x80,
0x00, 0x38, 0x00, 0x30, 0x30,
0xEB, 0x00, 0x31, 0x8F, 0x0A,
0x02, 0x80, 0x00, 0x38, 0x00,
0x30, 0x30, 0xEB, 0x00, 0x32,
0x8F, 0x0A, 0x03, 0x80, 0x00,
0x38, 0x00, 0x30, 0x30, 0xEB,
0x00, 0x33 };
static unsigned char select_item_1221[] = { 0xD0, 0x30, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x07, 0x81, 0x04, 0x61,
0x38, 0x31, 0xEB, 0x30, 0x8F,
0x08, 0x01, 0x81, 0x04, 0x61,
0x38, 0x31, 0xEB, 0x31, 0x8F,
0x08, 0x02, 0x81, 0x04, 0x61,
0x38, 0x31, 0xEB, 0x32, 0x8F,
0x08, 0x03, 0x81, 0x04, 0x61,
0x38, 0x31, 0xEB, 0x33 };
static unsigned char select_item_1231[] = { 0xD0, 0x34, 0x81, 0x03, 0x01, 0x24,
0x00, 0x82, 0x02, 0x81, 0x82,
0x85, 0x08, 0x82, 0x04, 0x30,
0xA0, 0x38, 0x32, 0xCB, 0x30,
0x8F, 0x09, 0x01, 0x82, 0x04,
0x30, 0xA0, 0x38, 0x32, 0xCB,
0x31, 0x8F, 0x09, 0x02, 0x82,
0x04, 0x30, 0xA0, 0x38, 0x32,
0xCB, 0x32, 0x8F, 0x09, 0x03,
0x82, 0x04, 0x30, 0xA0, 0x38,
0x32, 0xCB, 0x33 };
static struct select_item_test select_item_data_111 = {
.pdu = select_item_111,
.pdu_len = sizeof(select_item_111),
.qualifier = 0x00,
.alpha_id = "Toolkit Select",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.items[2] = {
.id = 3,
.text = "Item 3"
},
.items[3] = {
.id = 4,
.text = "Item 4"
}
};
static struct select_item_test select_item_data_121 = {
.pdu = select_item_121,
.pdu_len = sizeof(select_item_121),
.qualifier = 0x00,
.alpha_id = "LargeMenu1",
.items[0] = {
.id = 0x50,
.text = "Zero"
},
.items[1] = {
.id = 0x4F,
.text = "One"
},
.items[2] = {
.id = 0x4E,
.text = "Two"
},
.items[3] = {
.id = 0x4D,
.text = "Three"
},
.items[4] = {
.id = 0x4C,
.text = "Four"
},
.items[5] = {
.id = 0x4B,
.text = "Five"
},
.items[6] = {
.id = 0x4A,
.text = "Six"
},
.items[7] = {
.id = 0x49,
.text = "Seven"
},
.items[8] = {
.id = 0x48,
.text = "Eight"
},
.items[9] = {
.id = 0x47,
.text = "Nine"
},
.items[10] = {
.id = 0x46,
.text = "Alpha"
},
.items[11] = {
.id = 0x45,
.text = "Bravo"
},
.items[12] = {
.id = 0x44,
.text = "Charlie"
},
.items[13] = {
.id = 0x43,
.text = "Delta"
},
.items[14] = {
.id = 0x42,
.text = "Echo"
},
.items[15] = {
.id = 0x41,
.text = "Fox-trot"
},
.items[16] = {
.id = 0x40,
.text = "Black"
},
.items[17] = {
.id = 0x3F,
.text = "Brown"
},
.items[18] = {
.id = 0x3E,
.text = "Red"
},
.items[19] = {
.id = 0x3D,
.text = "Orange"
},
.items[20] = {
.id = 0x3C,
.text = "Yellow"
},
.items[21] = {
.id = 0x3B,
.text = "Green"
},
.items[22] = {
.id = 0x3A,
.text = "Blue"
},
.items[23] = {
.id = 0x39,
.text = "Violet"
},
.items[24] = {
.id = 0x38,
.text = "Grey"
},
.items[25] = {
.id = 0x37,
.text = "White"
},
.items[26] = {
.id = 0x36,
.text = "milli"
},
.items[27] = {
.id = 0x35,
.text = "micro"
},
.items[28] = {
.id = 0x34,
.text = "nano"
},
.items[29] = {
.id = 0x33,
.text = "pico"
}
};
static struct select_item_test select_item_data_131 = {
.pdu = select_item_131,
.pdu_len = sizeof(select_item_131),
.qualifier = 0x00,
.alpha_id = "LargeMenu2",
.items[0] = {
.id = 0xFF,
.text = "Call Forwarding Unconditional"
},
.items[1] = {
.id = 0xFE,
.text = "Call Forwarding On User Busy"
},
.items[2] = {
.id = 0xFD,
.text = "Call Forwarding On No Reply"
},
.items[3] = {
.id = 0xFC,
.text = "Call Forwarding On User Not Reachable"
},
.items[4] = {
.id = 0xFB,
.text = "Barring Of All Outgoing Calls"
},
.items[5] = {
.id = 0xFA,
.text = "Barring Of All Outgoing International Calls"
},
.items[6] = {
.id = 0xF9,
.text = "CLI Presentation"
}
};
static struct select_item_test select_item_data_141 = {
.pdu = select_item_141,
.pdu_len = sizeof(select_item_141),
.qualifier = 0x00,
.alpha_id = "Select Item",
.items[0] = {
.id = 0x11,
.text = "One"
},
.items[1] = {
.id = 0x12,
.text = "Two"
}
};
static struct select_item_test select_item_data_151 = {
.pdu = select_item_151,
.pdu_len = sizeof(select_item_151),
.qualifier = 0x00,
.alpha_id = "The SIM shall supply a set of items from which the user "
"may choose one. Each item comprises a short identifier (used "
"to indicate the selection) and a text string. Optionally the "
"SIM may include an alpha identifier. The alpha identifier i",
.items[0] = {
.id = 0x01,
.text = "Y"
}
};
static struct select_item_test select_item_data_161 = {
.pdu = select_item_161,
.pdu_len = sizeof(select_item_161),
.qualifier = 0x00,
.alpha_id = "0LargeMenu",
.items[0] = {
.id = 0xFF,
.text = "1 Call Forward Unconditional"
},
.items[1] = {
.id = 0xFE,
.text = "2 Call Forward On User Busy"
},
.items[2] = {
.id = 0xFD,
.text = "3 Call Forward On No Reply"
},
.items[3] = {
.id = 0xFC,
.text = "4 Call Forward On User Not Reachable"
},
.items[4] = {
.id = 0xFB,
.text = "5 Barring Of All Outgoing Calls"
},
.items[5] = {
.id = 0xFA,
.text = "6 Barring Of All Outgoing Int Calls"
},
.items[6] = {
.id = 0xF9,
.text = "7 CLI Presentation"
}
};
static struct select_item_test select_item_data_211 = {
.pdu = select_item_211,
.pdu_len = sizeof(select_item_211),
.qualifier = 0x00,
.alpha_id = "Toolkit Select",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.items[2] = {
.id = 3,
.text = "Item 3"
},
.next_act = {
.list = { STK_COMMAND_TYPE_SEND_SMS,
STK_COMMAND_TYPE_SETUP_CALL,
STK_COMMAND_TYPE_PROVIDE_LOCAL_INFO},
.len = 3
}
};
static struct select_item_test select_item_data_311 = {
.pdu = select_item_311,
.pdu_len = sizeof(select_item_311),
.qualifier = 0x00,
.alpha_id = "Toolkit Select",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.items[2] = {
.id = 3,
.text = "Item 3"
},
.item_id = 0x02
};
static struct select_item_test select_item_data_411 = {
.pdu = select_item_411,
.pdu_len = sizeof(select_item_411),
.qualifier = 0x80,
.alpha_id = "Toolkit Select",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.items[2] = {
.id = 3,
.text = "Item 3"
}
};
static struct select_item_test select_item_data_511 = {
.pdu = select_item_511,
.pdu_len = sizeof(select_item_511),
.qualifier = 0x00,
.alpha_id = "Toolkit Select",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.items[2] = {
.id = 3,
.text = "Item 3"
},
.icon_id = {
.qualifier = STK_ICON_QUALIFIER_TYPE_NON_SELF_EXPLANATORY,
.id = 1
},
.item_icon_id_list = {
.qualifier = STK_ICON_QUALIFIER_TYPE_NON_SELF_EXPLANATORY,
.list = { 5, 5, 5 },
.len = 3
}
};
static struct select_item_test select_item_data_521 = {
.pdu = select_item_521,
.pdu_len = sizeof(select_item_521),
.qualifier = 0x00,
.alpha_id = "Toolkit Select",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.items[2] = {
.id = 3,
.text = "Item 3"
},
.icon_id = {
.qualifier = STK_ICON_QUALIFIER_TYPE_SELF_EXPLANATORY,
.id = 1
},
.item_icon_id_list = {
.qualifier = STK_ICON_QUALIFIER_TYPE_SELF_EXPLANATORY,
.list = { 5, 5, 5 },
.len = 3
}
};
static struct select_item_test select_item_data_611 = {
.pdu = select_item_611,
.pdu_len = sizeof(select_item_611),
.qualifier = 0x03,
.alpha_id = "Toolkit Select",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.items[2] = {
.id = 3,
.text = "Item 3"
}
};
static struct select_item_test select_item_data_621 = {
.pdu = select_item_621,
.pdu_len = sizeof(select_item_621),
.qualifier = 0x01,
.alpha_id = "Toolkit Select",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.items[2] = {
.id = 3,
.text = "Item 3"
}
};
static struct select_item_test select_item_data_711 = {
.pdu = select_item_711,
.pdu_len = sizeof(select_item_711),
.qualifier = 0x04,
.alpha_id = "Toolkit Select",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
}
};
static struct select_item_test select_item_data_811 = {
.pdu = select_item_811,
.pdu_len = sizeof(select_item_811),
.qualifier = 0x00,
.alpha_id = "<TIME-OUT>",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.items[2] = {
.id = 3,
.text = "Item 3"
}
};
static struct select_item_test select_item_data_911 = {
.pdu = select_item_911,
.pdu_len = sizeof(select_item_911),
.qualifier = 0x00,
.alpha_id = "Toolkit Select 1",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x10, 0x00, 0xB4 }
},
.item_text_attr_list = {
.len = 8,
.list = { 0x00, 0x06, 0x00, 0xB4, 0x00, 0x06, 0x00, 0xB4 }
}
};
static struct select_item_test select_item_data_912 = {
.pdu = select_item_912,
.pdu_len = sizeof(select_item_912),
.qualifier = 0x00,
.alpha_id = "Toolkit Select 2",
.items[0] = {
.id = 1,
.text = "Item 3"
},
.items[1] = {
.id = 2,
.text = "Item 4"
}
};
static struct select_item_test select_item_data_921 = {
.pdu = select_item_921,
.pdu_len = sizeof(select_item_921),
.qualifier = 0x00,
.alpha_id = "Toolkit Select 1",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x10, 0x01, 0xB4 }
},
.item_text_attr_list = {
.len = 8,
.list = { 0x00, 0x06, 0x01, 0xB4, 0x00, 0x06, 0x01, 0xB4 }
}
};
static struct select_item_test select_item_data_922 = {
.pdu = select_item_922,
.pdu_len = sizeof(select_item_922),
.qualifier = 0x00,
.alpha_id = "Toolkit Select 2",
.items[0] = {
.id = 1,
.text = "Item 3"
},
.items[1] = {
.id = 2,
.text = "Item 4"
}
};
static struct select_item_test select_item_data_931 = {
.pdu = select_item_931,
.pdu_len = sizeof(select_item_931),
.qualifier = 0x00,
.alpha_id = "Toolkit Select 1",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x10, 0x02, 0xB4 }
},
.item_text_attr_list = {
.len = 8,
.list = { 0x00, 0x06, 0x02, 0xB4, 0x00, 0x06, 0x02, 0xB4 }
}
};
static struct select_item_test select_item_data_932 = {
.pdu = select_item_932,
.pdu_len = sizeof(select_item_932),
.qualifier = 0x00,
.alpha_id = "Toolkit Select 2",
.items[0] = {
.id = 1,
.text = "Item 3"
},
.items[1] = {
.id = 2,
.text = "Item 4"
}
};
static struct select_item_test select_item_data_941 = {
.pdu = select_item_941,
.pdu_len = sizeof(select_item_941),
.qualifier = 0x00,
.alpha_id = "Toolkit Select 1",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x10, 0x04, 0xB4 }
},
.item_text_attr_list = {
.len = 8,
.list = { 0x00, 0x06, 0x04, 0xB4, 0x00, 0x06, 0x04, 0xB4 }
}
};
static struct select_item_test select_item_data_942 = {
.pdu = select_item_942,
.pdu_len = sizeof(select_item_942),
.qualifier = 0x00,
.alpha_id = "Toolkit Select 2",
.items[0] = {
.id = 1,
.text = "Item 3"
},
.items[1] = {
.id = 2,
.text = "Item 4"
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x10, 0x00, 0xB4 }
},
.item_text_attr_list = {
.len = 8,
.list = { 0x00, 0x06, 0x00, 0xB4, 0x00, 0x06, 0x00, 0xB4 }
}
};
static struct select_item_test select_item_data_943 = {
.pdu = select_item_943,
.pdu_len = sizeof(select_item_943),
.qualifier = 0x00,
.alpha_id = "Toolkit Select 3",
.items[0] = {
.id = 1,
.text = "Item 5"
},
.items[1] = {
.id = 2,
.text = "Item 6"
}
};
static struct select_item_test select_item_data_951 = {
.pdu = select_item_951,
.pdu_len = sizeof(select_item_951),
.qualifier = 0x00,
.alpha_id = "Toolkit Select 1",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x10, 0x08, 0xB4 }
},
.item_text_attr_list = {
.len = 8,
.list = { 0x00, 0x06, 0x08, 0xB4, 0x00, 0x06, 0x08, 0xB4 }
}
};
static struct select_item_test select_item_data_952 = {
.pdu = select_item_952,
.pdu_len = sizeof(select_item_952),
.qualifier = 0x00,
.alpha_id = "Toolkit Select 2",
.items[0] = {
.id = 1,
.text = "Item 3"
},
.items[1] = {
.id = 2,
.text = "Item 4"
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x10, 0x00, 0xB4 }
},
.item_text_attr_list = {
.len = 8,
.list = { 0x00, 0x06, 0x00, 0xB4, 0x00, 0x06, 0x00, 0xB4 }
}
};
static struct select_item_test select_item_data_953 = {
.pdu = select_item_953,
.pdu_len = sizeof(select_item_953),
.qualifier = 0x00,
.alpha_id = "Toolkit Select 3",
.items[0] = {
.id = 1,
.text = "Item 5"
},
.items[1] = {
.id = 2,
.text = "Item 6"
}
};
static struct select_item_test select_item_data_961 = {
.pdu = select_item_961,
.pdu_len = sizeof(select_item_961),
.qualifier = 0x00,
.alpha_id = "Toolkit Select 1",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x10, 0x10, 0xB4 }
},
.item_text_attr_list = {
.len = 8,
.list = { 0x00, 0x06, 0x10, 0xB4, 0x00, 0x06, 0x10, 0xB4 }
}
};
static struct select_item_test select_item_data_962 = {
.pdu = select_item_962,
.pdu_len = sizeof(select_item_962),
.qualifier = 0x00,
.alpha_id = "Toolkit Select 2",
.items[0] = {
.id = 1,
.text = "Item 3"
},
.items[1] = {
.id = 2,
.text = "Item 4"
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x10, 0x00, 0xB4 }
},
.item_text_attr_list = {
.len = 8,
.list = { 0x00, 0x06, 0x00, 0xB4, 0x00, 0x06, 0x00, 0xB4 }
}
};
static struct select_item_test select_item_data_963 = {
.pdu = select_item_963,
.pdu_len = sizeof(select_item_963),
.qualifier = 0x00,
.alpha_id = "Toolkit Select 3",
.items[0] = {
.id = 1,
.text = "Item 5"
},
.items[1] = {
.id = 2,
.text = "Item 6"
}
};
static struct select_item_test select_item_data_971 = {
.pdu = select_item_971,
.pdu_len = sizeof(select_item_971),
.qualifier = 0x00,
.alpha_id = "Toolkit Select 1",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x10, 0x20, 0xB4 }
},
.item_text_attr_list = {
.len = 8,
.list = { 0x00, 0x06, 0x20, 0xB4, 0x00, 0x06, 0x20, 0xB4 }
}
};
static struct select_item_test select_item_data_972 = {
.pdu = select_item_972,
.pdu_len = sizeof(select_item_972),
.qualifier = 0x00,
.alpha_id = "Toolkit Select 2",
.items[0] = {
.id = 1,
.text = "Item 3"
},
.items[1] = {
.id = 2,
.text = "Item 4"
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x10, 0x00, 0xB4 }
},
.item_text_attr_list = {
.len = 8,
.list = { 0x00, 0x06, 0x00, 0xB4, 0x00, 0x06, 0x00, 0xB4 }
}
};
static struct select_item_test select_item_data_973 = {
.pdu = select_item_973,
.pdu_len = sizeof(select_item_973),
.qualifier = 0x00,
.alpha_id = "Toolkit Select 3",
.items[0] = {
.id = 1,
.text = "Item 5"
},
.items[1] = {
.id = 2,
.text = "Item 6"
}
};
static struct select_item_test select_item_data_981 = {
.pdu = select_item_981,
.pdu_len = sizeof(select_item_981),
.qualifier = 0x00,
.alpha_id = "Toolkit Select 1",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x10, 0x40, 0xB4 }
},
.item_text_attr_list = {
.len = 8,
.list = { 0x00, 0x06, 0x40, 0xB4, 0x00, 0x06, 0x40, 0xB4 }
}
};
static struct select_item_test select_item_data_982 = {
.pdu = select_item_982,
.pdu_len = sizeof(select_item_982),
.qualifier = 0x00,
.alpha_id = "Toolkit Select 2",
.items[0] = {
.id = 1,
.text = "Item 3"
},
.items[1] = {
.id = 2,
.text = "Item 4"
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x10, 0x00, 0xB4 }
},
.item_text_attr_list = {
.len = 8,
.list = { 0x00, 0x06, 0x00, 0xB4, 0x00, 0x06, 0x00, 0xB4 }
}
};
static struct select_item_test select_item_data_983 = {
.pdu = select_item_983,
.pdu_len = sizeof(select_item_983),
.qualifier = 0x00,
.alpha_id = "Toolkit Select 3",
.items[0] = {
.id = 1,
.text = "Item 5"
},
.items[1] = {
.id = 2,
.text = "Item 6"
}
};
static struct select_item_test select_item_data_991 = {
.pdu = select_item_991,
.pdu_len = sizeof(select_item_991),
.qualifier = 0x00,
.alpha_id = "Toolkit Select 1",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x10, 0x80, 0xB4 }
},
.item_text_attr_list = {
.len = 8,
.list = { 0x00, 0x06, 0x80, 0xB4, 0x00, 0x06, 0x80, 0xB4 }
}
};
static struct select_item_test select_item_data_992 = {
.pdu = select_item_992,
.pdu_len = sizeof(select_item_992),
.qualifier = 0x00,
.alpha_id = "Toolkit Select 2",
.items[0] = {
.id = 1,
.text = "Item 3"
},
.items[1] = {
.id = 2,
.text = "Item 4"
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x10, 0x00, 0xB4 }
},
.item_text_attr_list = {
.len = 8,
.list = { 0x00, 0x06, 0x00, 0xB4, 0x00, 0x06, 0x00, 0xB4 }
}
};
static struct select_item_test select_item_data_993 = {
.pdu = select_item_993,
.pdu_len = sizeof(select_item_993),
.qualifier = 0x00,
.alpha_id = "Toolkit Select 3",
.items[0] = {
.id = 1,
.text = "Item 5"
},
.items[1] = {
.id = 2,
.text = "Item 6"
}
};
static struct select_item_test select_item_data_9101 = {
.pdu = select_item_9101,
.pdu_len = sizeof(select_item_9101),
.qualifier = 0x00,
.alpha_id = "Toolkit Select 1",
.items[0] = {
.id = 1,
.text = "Item 1"
},
.items[1] = {
.id = 2,
.text = "Item 2"
},
.text_attr = {
.len = 4,
.attributes = { 0x00, 0x10, 0x00, 0xB4 }
},
.item_text_attr_list = {
.len = 8,
.list = { 0x00, 0x06, 0x00, 0xB4, 0x00, 0x06, 0x00, 0xB4 }
}
};
static struct select_item_test select_item_data_9102 = {
.pdu = select_item_9102,
.pdu_len = sizeof(select_item_9102),
.qualifier = 0x00,
.alpha_id = "Toolkit Select 2",
.items[0] = {
.id = 1,
.text = "Item 3"
},
.items[1] = {
.id = 2,
.text = "Item 4"
}
};
static struct select_item_test select_item_data_1011 = {
.pdu = select_item_1011,
.pdu_len = sizeof(select_item_1011),
.qualifier = 0x00,
.alpha_id = "ЗДРАВСТВУЙТЕ",
.items[0] = {
.id = 1,
.text = "ЗДРАВСТВУЙТЕ1"
},
.items[1] = {
.id = 2,
.text = "ЗДРАВСТВУЙТЕ2"
},
.items[2] = {
.id = 3,
.text = "ЗДРАВСТВУЙТЕ3"
}
};
static struct select_item_test select_item_data_1021 = {
.pdu = select_item_1021,
.pdu_len = sizeof(select_item_1021),
.qualifier = 0x00,
.alpha_id = "ЗДРАВСТВУЙТЕ",
.items[0] = {
.id = 1,
.text = "ЗДРАВСТВУЙТЕ1"
},
.items[1] = {
.id = 2,
.text = "ЗДРАВСТВУЙТЕ2"
},
.items[2] = {
.id = 3,
.text = "ЗДРАВСТВУЙТЕ3"
}
};
static struct select_item_test select_item_data_1031 = {
.pdu = select_item_1031,
.pdu_len = sizeof(select_item_1031),
.qualifier = 0x00,
.alpha_id = "ЗДРАВСТВУЙТЕ",
.items[0] = {
.id = 1,
.text = "ЗДРАВСТВУЙТЕ1"
},
.items[1] = {
.id = 2,
.text = "ЗДРАВСТВУЙТЕ2"
},
.items[2] = {
.id = 3,
.text = "ЗДРАВСТВУЙТЕ3"
}
};
static struct select_item_test select_item_data_1111 = {
.pdu = select_item_1111,
.pdu_len = sizeof(select_item_1111),
.qualifier = 0x00,
.alpha_id = "工具箱选择",
.items[0] = {
.id = 1,
.text = "项目一"
},
.items[1] = {
.id = 2,
.text = "项目二"
},
.items[2] = {
.id = 3,
.text = "项目三"
},
.items[3] = {
.id = 4,
.text = "项目四"
}
};
static struct select_item_test select_item_data_1211 = {
.pdu = select_item_1211,
.pdu_len = sizeof(select_item_1211),
.qualifier = 0x00,
.alpha_id = "80ル0",
.items[0] = {
.id = 1,
.text = "80ル1"
},
.items[1] = {
.id = 2,
.text = "80ル2"
},
.items[2] = {
.id = 3,
.text = "80ル3"
}
};
static struct select_item_test select_item_data_1221 = {
.pdu = select_item_1221,
.pdu_len = sizeof(select_item_1221),
.qualifier = 0x00,
.alpha_id = "81ル0",
.items[0] = {
.id = 1,
.text = "81ル1"
},
.items[1] = {
.id = 2,
.text = "81ル2"
},
.items[2] = {
.id = 3,
.text = "81ル3"
}
};
static struct select_item_test select_item_data_1231 = {
.pdu = select_item_1231,
.pdu_len = sizeof(select_item_1231),
.qualifier = 0x00,
.alpha_id = "82ル0",
.items[0] = {
.id = 1,
.text = "82ル1"
},
.items[1] = {
.id = 2,
.text = "82ル2"
},
.items[2] = {
.id = 3,
.text = "82ル3"
}
};
static void test_select_item(gconstpointer data)
{
const struct select_item_test *test = data;
struct stk_command *command;
command = stk_command_new_from_pdu(test->pdu, test->pdu_len);
g_assert(command);
g_assert(command->number == 1);
g_assert(command->type == STK_COMMAND_TYPE_SELECT_ITEM);
g_assert(command->qualifier == test->qualifier);
g_assert(command->src == STK_DEVICE_IDENTITY_TYPE_UICC);
g_assert(command->dst == STK_DEVICE_IDENTITY_TYPE_TERMINAL);
check_alpha_id(command->select_item.alpha_id, test->alpha_id);
check_items(command->select_item.items, test->items);
check_items_next_action_indicator(&command->select_item.next_act,
&test->next_act);
check_item_id(command->select_item.item_id, test->item_id);
check_icon_id(&command->select_item.icon_id, &test->icon_id);
check_item_icon_id_list(&command->select_item.item_icon_id_list,
&test->item_icon_id_list);
check_text_attr(&command->select_item.text_attr, &test->text_attr);
check_item_text_attribute_list(
&command->select_item.item_text_attr_list,
&test->item_text_attr_list);
check_frame_id(&command->select_item.frame_id, &test->frame_id);
stk_command_free(command);
}
struct send_sms_test {
const unsigned char *pdu;
unsigned int pdu_len;
unsigned char qualifier;
char *alpha_id;
struct stk_address address;
struct sms gsm_sms;
struct stk_common_byte_array cdma_sms;
struct stk_icon_id icon_id;
struct stk_text_attribute text_attr;
struct stk_frame_id frame_id;
};
/* 3GPP TS 31.124 Section 27.22.4.10.1.4.2 */
static unsigned char send_sms_111[] = { 0xD0, 0x37, 0x81, 0x03, 0x01, 0x13,
0x00, 0x82, 0x02, 0x81, 0x83, 0x85,
0x07, 0x53, 0x65, 0x6E, 0x64, 0x20,
0x53, 0x4D, 0x86, 0x09, 0x91, 0x11,
0x22, 0x33, 0x44, 0x55, 0x66, 0x77,
0xF8, 0x8B, 0x18, 0x01, 0x00, 0x09,
0x91, 0x10, 0x32, 0x54, 0x76, 0xF8,
0x40, 0xF4, 0x0C, 0x54, 0x65, 0x73,
0x74, 0x20, 0x4D, 0x65, 0x73, 0x73,
0x61, 0x67, 0x65 };
static struct send_sms_test send_sms_data_111 = {
.pdu = send_sms_111,
.pdu_len = sizeof(send_sms_111),
.qualifier = 0x00,
.alpha_id = "Send SM",
.address = {
.ton_npi = 0x91,
.number = "112233445566778"
},
.gsm_sms = {
{}, SMS_TYPE_SUBMIT,
{.submit = {
.mr = 0x00,
.daddr.address = "012345678",
.udl = 12,
.ud = "Test Message"
} }
}
};
static void test_send_sms(gconstpointer data)
{
const struct send_sms_test *test = data;
struct stk_command *command;
command = stk_command_new_from_pdu(test->pdu, test->pdu_len);
g_assert(command);
g_assert(command->number == 1);
g_assert(command->type == STK_COMMAND_TYPE_SEND_SMS);
g_assert(command->qualifier == test->qualifier);
g_assert(command->src == STK_DEVICE_IDENTITY_TYPE_UICC);
g_assert(command->dst == STK_DEVICE_IDENTITY_TYPE_NETWORK);
check_alpha_id(command->send_sms.alpha_id, test->alpha_id);
check_address(&command->send_sms.address, &test->address);
check_gsm_sms_tpdu(&command->send_sms.gsm_sms, &test->gsm_sms);
check_cdma_sms_tpdu(&command->send_sms.cdma_sms, &test->cdma_sms);
check_icon_id(&command->select_item.icon_id, &test->icon_id);
check_text_attr(&command->select_item.text_attr, &test->text_attr);
check_frame_id(&command->select_item.frame_id, &test->frame_id);
stk_command_free(command);
}
int main(int argc, char **argv)
{
g_test_init(&argc, &argv, NULL);
g_test_add_data_func("/teststk/Display Text 1.1.1",
&display_text_data_111, test_display_text);
g_test_add_data_func("/teststk/Display Text 1.3.1",
&display_text_data_131, test_display_text);
g_test_add_data_func("/teststk/Display Text 1.4.1",
&display_text_data_141, test_display_text);
g_test_add_data_func("/teststk/Display Text 1.5.1",
&display_text_data_151, test_display_text);
g_test_add_data_func("/teststk/Display Text 1.6.1",
&display_text_data_161, test_display_text);
g_test_add_data_func("/teststk/Display Text 1.7.1",
&display_text_data_171, test_display_text);
g_test_add_data_func("/teststk/Display Text 5.1.1",
&display_text_data_511, test_display_text);
g_test_add_data_func("/teststk/Display Text 5.2.1",
&display_text_data_521, test_display_text);
g_test_add_data_func("/teststk/Display Text 5.3.1",
&display_text_data_531, test_display_text);
g_test_add_data_func("/teststk/Display Text 6.1.1",
&display_text_data_611, test_display_text);
g_test_add_data_func("/teststk/Display Text 7.1.1",
&display_text_data_711, test_display_text);
g_test_add_data_func("/teststk/Display Text 9.1.1",
&display_text_data_911, test_display_text);
g_test_add_data_func("/teststk/Display Text 10.1.1",
&display_text_data_1011, test_display_text);
g_test_add_data_func("/teststk/Get Inkey 1.1.1",
&get_inkey_data_111, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 1.2.1",
&get_inkey_data_121, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 1.3.1",
&get_inkey_data_131, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 1.4.1",
&get_inkey_data_141, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 1.5.1",
&get_inkey_data_151, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 1.6.1",
&get_inkey_data_161, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 2.1.1",
&get_inkey_data_211, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 3.1.1",
&get_inkey_data_311, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 3.2.1",
&get_inkey_data_321, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 4.1.1",
&get_inkey_data_411, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 5.1.1",
&get_inkey_data_511, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 5.1.2",
&get_inkey_data_512, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 6.1.1",
&get_inkey_data_611, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 6.2.1",
&get_inkey_data_621, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 6.3.1",
&get_inkey_data_631, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 6.4.1",
&get_inkey_data_641, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 7.1.1",
&get_inkey_data_711, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 7.1.2",
&get_inkey_data_712, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 8.1.1",
&get_inkey_data_811, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 9.1.1",
&get_inkey_data_911, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 9.1.2",
&get_inkey_data_912, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 9.2.1",
&get_inkey_data_921, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 9.2.2",
&get_inkey_data_922, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 9.3.1",
&get_inkey_data_931, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 9.3.2",
&get_inkey_data_932, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 9.4.1",
&get_inkey_data_941, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 9.4.2",
&get_inkey_data_942, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 9.4.3",
&get_inkey_data_943, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 9.5.1",
&get_inkey_data_951, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 9.5.2",
&get_inkey_data_952, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 9.5.3",
&get_inkey_data_953, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 9.6.1",
&get_inkey_data_961, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 9.6.2",
&get_inkey_data_962, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 9.6.3",
&get_inkey_data_963, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 9.7.1",
&get_inkey_data_971, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 9.7.2",
&get_inkey_data_972, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 9.7.3",
&get_inkey_data_973, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 9.8.1",
&get_inkey_data_981, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 9.8.2",
&get_inkey_data_982, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 9.8.3",
&get_inkey_data_983, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 9.9.1",
&get_inkey_data_991, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 9.9.2a",
&get_inkey_data_992a, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 9.9.2b",
&get_inkey_data_992b, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 9.9.3",
&get_inkey_data_993, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 9.10.1",
&get_inkey_data_9101, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 9.10.2",
&get_inkey_data_9102, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 10.1.1",
&get_inkey_data_1011, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 10.2.1",
&get_inkey_data_1021, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 11.1.1",
&get_inkey_data_1111, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 12.1.1",
&get_inkey_data_1211, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 12.2.1",
&get_inkey_data_1221, test_get_inkey);
g_test_add_data_func("/teststk/Get Inkey 13.1.1",
&get_inkey_data_1311, test_get_inkey);
g_test_add_data_func("/teststk/Get Input 1.1.1",
&get_input_data_111, test_get_input);
g_test_add_data_func("/teststk/Get Input 1.2.1",
&get_input_data_121, test_get_input);
g_test_add_data_func("/teststk/Get Input 1.3.1",
&get_input_data_131, test_get_input);
g_test_add_data_func("/teststk/Get Input 1.4.1",
&get_input_data_141, test_get_input);
g_test_add_data_func("/teststk/Get Input 1.5.1",
&get_input_data_151, test_get_input);
g_test_add_data_func("/teststk/Get Input 1.6.1",
&get_input_data_161, test_get_input);
g_test_add_data_func("/teststk/Get Input 1.7.1",
&get_input_data_171, test_get_input);
g_test_add_data_func("/teststk/Get Input 1.8.1",
&get_input_data_181, test_get_input);
g_test_add_data_func("/teststk/Get Input 1.9.1",
&get_input_data_191, test_get_input);
g_test_add_data_func("/teststk/Get Input 1.10.1",
&get_input_data_1101, test_get_input);
g_test_add_data_func("/teststk/Get Input 2.1.1",
&get_input_data_211, test_get_input);
g_test_add_data_func("/teststk/Get Input 3.1.1",
&get_input_data_311, test_get_input);
g_test_add_data_func("/teststk/Get Input 3.2.1",
&get_input_data_321, test_get_input);
g_test_add_data_func("/teststk/Get Input 4.1.1",
&get_input_data_411, test_get_input);
g_test_add_data_func("/teststk/Get Input 4.2.1",
&get_input_data_421, test_get_input);
g_test_add_data_func("/teststk/Get Input 5.1.1",
&get_input_data_511, test_get_input);
g_test_add_data_func("/teststk/Get Input 5.2.1",
&get_input_data_521, test_get_input);
g_test_add_data_func("/teststk/Get Input 6.1.1",
&get_input_data_611, test_get_input);
g_test_add_data_func("/teststk/Get Input 6.2.1",
&get_input_data_621, test_get_input);
g_test_add_data_func("/teststk/Get Input 6.3.1",
&get_input_data_631, test_get_input);
g_test_add_data_func("/teststk/Get Input 6.4.1",
&get_input_data_641, test_get_input);
g_test_add_data_func("/teststk/Get Input 7.1.1",
&get_input_data_711, test_get_input);
g_test_add_data_func("/teststk/Get Input 8.1.1",
&get_input_data_811, test_get_input);
g_test_add_data_func("/teststk/Get Input 8.1.2",
&get_input_data_812, test_get_input);
g_test_add_data_func("/teststk/Get Input 8.2.1",
&get_input_data_821, test_get_input);
g_test_add_data_func("/teststk/Get Input 8.2.2",
&get_input_data_822, test_get_input);
g_test_add_data_func("/teststk/Get Input 8.3.1",
&get_input_data_831, test_get_input);
g_test_add_data_func("/teststk/Get Input 8.3.2",
&get_input_data_832, test_get_input);
g_test_add_data_func("/teststk/Get Input 8.4.1",
&get_input_data_841, test_get_input);
g_test_add_data_func("/teststk/Get Input 8.4.2",
&get_input_data_842, test_get_input);
g_test_add_data_func("/teststk/Get Input 8.4.3",
&get_input_data_843, test_get_input);
g_test_add_data_func("/teststk/Get Input 8.5.1",
&get_input_data_851, test_get_input);
g_test_add_data_func("/teststk/Get Input 8.5.2",
&get_input_data_852, test_get_input);
g_test_add_data_func("/teststk/Get Input 8.5.3",
&get_input_data_853, test_get_input);
g_test_add_data_func("/teststk/Get Input 8.6.1",
&get_input_data_861, test_get_input);
g_test_add_data_func("/teststk/Get Input 8.6.2",
&get_input_data_862, test_get_input);
g_test_add_data_func("/teststk/Get Input 8.6.3",
&get_input_data_863, test_get_input);
g_test_add_data_func("/teststk/Get Input 8.7.1",
&get_input_data_871, test_get_input);
g_test_add_data_func("/teststk/Get Input 8.7.2",
&get_input_data_872, test_get_input);
g_test_add_data_func("/teststk/Get Input 8.7.3",
&get_input_data_873, test_get_input);
g_test_add_data_func("/teststk/Get Input 8.8.1",
&get_input_data_881, test_get_input);
g_test_add_data_func("/teststk/Get Input 8.8.2",
&get_input_data_882, test_get_input);
g_test_add_data_func("/teststk/Get Input 8.8.3",
&get_input_data_883, test_get_input);
g_test_add_data_func("/teststk/Get Input 8.9.1",
&get_input_data_891, test_get_input);
g_test_add_data_func("/teststk/Get Input 8.9.2",
&get_input_data_892, test_get_input);
g_test_add_data_func("/teststk/Get Input 8.9.3",
&get_input_data_893, test_get_input);
g_test_add_data_func("/teststk/Get Input 8.10.1",
&get_input_data_8101, test_get_input);
g_test_add_data_func("/teststk/Get Input 8.10.2",
&get_input_data_8102, test_get_input);
g_test_add_data_func("/teststk/Get Input 9.1.1",
&get_input_data_911, test_get_input);
g_test_add_data_func("/teststk/Get Input 9.2.1",
&get_input_data_921, test_get_input);
g_test_add_data_func("/teststk/Get Input 10.1.1",
&get_input_data_1011, test_get_input);
g_test_add_data_func("/teststk/Get Input 10.2.1",
&get_input_data_1021, test_get_input);
g_test_add_data_func("/teststk/Get Input 11.1.1",
&get_input_data_1111, test_get_input);
g_test_add_data_func("/teststk/Get Input 11.2.1",
&get_input_data_1121, test_get_input);
g_test_add_data_func("/teststk/Get Input 12.1.1",
&get_input_data_1211, test_get_input);
g_test_add_data_func("/teststk/Get Input 12.2.1",
&get_input_data_1221, test_get_input);
g_test_add_data_func("/teststk/More Time 1.1.1",
&more_time_data_111, test_more_time);
g_test_add_data_func("/teststk/Play Tone 1.1.1",
&play_tone_data_111, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 1.1.2",
&play_tone_data_112, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 1.1.3",
&play_tone_data_113, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 1.1.4",
&play_tone_data_114, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 1.1.5",
&play_tone_data_115, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 1.1.6",
&play_tone_data_116, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 1.1.7",
&play_tone_data_117, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 1.1.8",
&play_tone_data_118, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 1.1.9",
&play_tone_data_119, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 1.1.10",
&play_tone_data_1110, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 1.1.11",
&play_tone_data_1111, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 1.1.12",
&play_tone_data_1112, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 1.1.13",
&play_tone_data_1113, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 1.1.14",
&play_tone_data_1114, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 1.1.15",
&play_tone_data_1115, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 2.1.1",
&play_tone_data_211, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 2.1.2",
&play_tone_data_212, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 2.1.3",
&play_tone_data_213, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 3.1.1",
&play_tone_data_311, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 3.2.1",
&play_tone_data_321, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 3.3.1",
&play_tone_data_331, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 3.4.1",
&play_tone_data_341, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 4.1.1",
&play_tone_data_411, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 4.1.2",
&play_tone_data_412, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 4.2.1",
&play_tone_data_421, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 4.2.2",
&play_tone_data_422, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 4.3.1",
&play_tone_data_431, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 4.3.2",
&play_tone_data_432, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 4.4.1",
&play_tone_data_441, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 4.4.2",
&play_tone_data_442, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 4.4.3",
&play_tone_data_443, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 4.5.1",
&play_tone_data_451, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 4.5.2",
&play_tone_data_452, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 4.5.3",
&play_tone_data_453, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 4.6.1",
&play_tone_data_461, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 4.6.2",
&play_tone_data_462, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 4.6.3",
&play_tone_data_463, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 4.7.1",
&play_tone_data_471, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 4.7.2",
&play_tone_data_472, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 4.7.3",
&play_tone_data_473, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 4.8.1",
&play_tone_data_481, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 4.8.2",
&play_tone_data_482, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 4.8.3",
&play_tone_data_483, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 4.9.1",
&play_tone_data_491, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 4.9.2",
&play_tone_data_492, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 4.9.3",
&play_tone_data_493, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 4.10.1",
&play_tone_data_4101, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 4.10.2",
&play_tone_data_4102, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 5.1.1",
&play_tone_data_511, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 5.1.2",
&play_tone_data_512, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 5.1.3",
&play_tone_data_513, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 6.1.1",
&play_tone_data_611, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 6.1.2",
&play_tone_data_612, test_play_tone);
g_test_add_data_func("/teststk/Play Tone 6.1.3",
&play_tone_data_613, test_play_tone);
g_test_add_data_func("/teststk/Poll Interval 1.1.1",
&poll_interval_data_111, test_poll_interval);
g_test_add_data_func("/teststk/Setup Menu 1.1.1",
&setup_menu_data_111, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 1.1.2",
&setup_menu_data_112, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 1.1.3",
&setup_menu_data_113, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 1.2.1",
&setup_menu_data_121, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 1.2.2",
&setup_menu_data_122, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 1.2.3",
&setup_menu_data_123, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 2.1.1",
&setup_menu_data_211, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 3.1.1",
&setup_menu_data_311, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 4.1.1",
&setup_menu_data_411, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 4.2.1",
&setup_menu_data_421, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 5.1.1",
&setup_menu_data_511, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 6.1.1",
&setup_menu_data_611, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 6.1.2",
&setup_menu_data_612, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 6.2.1",
&setup_menu_data_621, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 6.2.2",
&setup_menu_data_622, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 6.3.1",
&setup_menu_data_631, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 6.3.2",
&setup_menu_data_632, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 6.4.1",
&setup_menu_data_641, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 6.4.2",
&setup_menu_data_642, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 6.4.3",
&setup_menu_data_643, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 6.5.1",
&setup_menu_data_651, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 6.6.1",
&setup_menu_data_661, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 6.7.1",
&setup_menu_data_671, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 6.8.1",
&setup_menu_data_681, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 6.9.1",
&setup_menu_data_691, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 6.10.1",
&setup_menu_data_6101, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 7.1.1",
&setup_menu_data_711, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 7.1.2",
&setup_menu_data_712, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 7.1.3",
&setup_menu_data_713, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 8.1.1",
&setup_menu_data_811, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 8.1.2",
&setup_menu_data_812, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 8.1.3",
&setup_menu_data_813, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 9.1.1",
&setup_menu_data_911, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 9.1.2",
&setup_menu_data_912, test_setup_menu);
g_test_add_data_func("/teststk/Setup Menu 9.1.3",
&setup_menu_data_913, test_setup_menu);
g_test_add_data_func("/teststk/Select Item 1.1.1",
&select_item_data_111, test_select_item);
g_test_add_data_func("/teststk/Select Item 1.2.1",
&select_item_data_121, test_select_item);
g_test_add_data_func("/teststk/Select Item 1.3.1",
&select_item_data_131, test_select_item);
g_test_add_data_func("/teststk/Select Item 1.4.1",
&select_item_data_141, test_select_item);
g_test_add_data_func("/teststk/Select Item 1.5.1",
&select_item_data_151, test_select_item);
g_test_add_data_func("/teststk/Select Item 1.6.1",
&select_item_data_161, test_select_item);
g_test_add_data_func("/teststk/Select Item 2.1.1",
&select_item_data_211, test_select_item);
g_test_add_data_func("/teststk/Select Item 3.1.1",
&select_item_data_311, test_select_item);
g_test_add_data_func("/teststk/Select Item 4.1.1",
&select_item_data_411, test_select_item);
g_test_add_data_func("/teststk/Select Item 5.1.1",
&select_item_data_511, test_select_item);
g_test_add_data_func("/teststk/Select Item 5.2.1",
&select_item_data_521, test_select_item);
g_test_add_data_func("/teststk/Select Item 6.1.1",
&select_item_data_611, test_select_item);
g_test_add_data_func("/teststk/Select Item 6.2.1",
&select_item_data_621, test_select_item);
g_test_add_data_func("/teststk/Select Item 7.1.1",
&select_item_data_711, test_select_item);
g_test_add_data_func("/teststk/Select Item 8.1.1",
&select_item_data_811, test_select_item);
g_test_add_data_func("/teststk/Select Item 9.1.1",
&select_item_data_911, test_select_item);
g_test_add_data_func("/teststk/Select Item 9.1.2",
&select_item_data_912, test_select_item);
g_test_add_data_func("/teststk/Select Item 9.2.1",
&select_item_data_921, test_select_item);
g_test_add_data_func("/teststk/Select Item 9.2.2",
&select_item_data_922, test_select_item);
g_test_add_data_func("/teststk/Select Item 9.3.1",
&select_item_data_931, test_select_item);
g_test_add_data_func("/teststk/Select Item 9.3.2",
&select_item_data_932, test_select_item);
g_test_add_data_func("/teststk/Select Item 9.4.1",
&select_item_data_941, test_select_item);
g_test_add_data_func("/teststk/Select Item 9.4.2",
&select_item_data_942, test_select_item);
g_test_add_data_func("/teststk/Select Item 9.4.3",
&select_item_data_943, test_select_item);
g_test_add_data_func("/teststk/Select Item 9.5.1",
&select_item_data_951, test_select_item);
g_test_add_data_func("/teststk/Select Item 9.5.2",
&select_item_data_952, test_select_item);
g_test_add_data_func("/teststk/Select Item 9.5.3",
&select_item_data_953, test_select_item);
g_test_add_data_func("/teststk/Select Item 9.6.1",
&select_item_data_961, test_select_item);
g_test_add_data_func("/teststk/Select Item 9.6.2",
&select_item_data_962, test_select_item);
g_test_add_data_func("/teststk/Select Item 9.6.3",
&select_item_data_963, test_select_item);
g_test_add_data_func("/teststk/Select Item 9.7.1",
&select_item_data_971, test_select_item);
g_test_add_data_func("/teststk/Select Item 9.7.2",
&select_item_data_972, test_select_item);
g_test_add_data_func("/teststk/Select Item 9.7.3",
&select_item_data_973, test_select_item);
g_test_add_data_func("/teststk/Select Item 9.8.1",
&select_item_data_981, test_select_item);
g_test_add_data_func("/teststk/Select Item 9.8.2",
&select_item_data_982, test_select_item);
g_test_add_data_func("/teststk/Select Item 9.8.3",
&select_item_data_983, test_select_item);
g_test_add_data_func("/teststk/Select Item 9.9.1",
&select_item_data_991, test_select_item);
g_test_add_data_func("/teststk/Select Item 9.9.2",
&select_item_data_992, test_select_item);
g_test_add_data_func("/teststk/Select Item 9.9.3",
&select_item_data_993, test_select_item);
g_test_add_data_func("/teststk/Select Item 9.10.1",
&select_item_data_9101, test_select_item);
g_test_add_data_func("/teststk/Select Item 9.10.2",
&select_item_data_9102, test_select_item);
g_test_add_data_func("/teststk/Select Item 10.1.1",
&select_item_data_1011, test_select_item);
g_test_add_data_func("/teststk/Select Item 10.2.1",
&select_item_data_1021, test_select_item);
g_test_add_data_func("/teststk/Select Item 10.3.1",
&select_item_data_1031, test_select_item);
g_test_add_data_func("/teststk/Select Item 11.1.1",
&select_item_data_1111, test_select_item);
g_test_add_data_func("/teststk/Select Item 12.1.1",
&select_item_data_1211, test_select_item);
g_test_add_data_func("/teststk/Select Item 12.2.1",
&select_item_data_1221, test_select_item);
g_test_add_data_func("/teststk/Select Item 12.3.1",
&select_item_data_1231, test_select_item);
g_test_add_data_func("/teststk/Send SMS 1.1.1",
&send_sms_data_111, test_send_sms);
return g_test_run();
}