summaryrefslogtreecommitdiffstats
path: root/src/stkutil.c
diff options
context:
space:
mode:
authorYang Gu <yang.gu@intel.com>2010-04-21 12:55:45 +0800
committerDenis Kenzior <denkenz@gmail.com>2010-04-21 09:02:17 -0500
commit244d4d261efa2c1f34fc9a5035c23b160192543d (patch)
treea89fea4cc62d9abdf08503c28894712aa27e8cf7 /src/stkutil.c
parent22103491a4171a55a2593bb1b727b086c13df7c6 (diff)
downloadofono-244d4d261efa2c1f34fc9a5035c23b160192543d.tar.bz2
Add parser for access technology objects
Diffstat (limited to 'src/stkutil.c')
-rw-r--r--src/stkutil.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/stkutil.c b/src/stkutil.c
index 0d4be68e..69d5a4a2 100644
--- a/src/stkutil.c
+++ b/src/stkutil.c
@@ -1243,6 +1243,18 @@ static gboolean parse_dataobj_aid(struct comprehension_tlv_iter *iter,
return TRUE;
}
+/*
+ * Defined in TS 102.223 Section 8.61. According to it, the technology field
+ * can have at most 127 bytes. However, all the defined values are only 1 byte,
+ * so we just use 1 byte to represent it.
+ */
+static gboolean parse_dataobj_access_technology(
+ struct comprehension_tlv_iter *iter, void *user)
+{
+ unsigned char *byte = user;
+ return parse_dataobj_common_byte(iter, byte);
+}
+
/* Defined in TS 102.223 Section 8.72 */
static gboolean parse_dataobj_text_attr(struct comprehension_tlv_iter *iter,
void *user)
@@ -1393,6 +1405,8 @@ static dataobj_handler handler_for_type(enum stk_data_object_type type)
return parse_dataobj_uicc_te_interface;
case STK_DATA_OBJECT_TYPE_AID:
return parse_dataobj_aid;
+ case STK_DATA_OBJECT_TYPE_ACCESS_TECHNOLOGY:
+ return parse_dataobj_access_technology;
case STK_DATA_OBJECT_TYPE_TEXT_ATTRIBUTE:
return parse_dataobj_text_attr;
case STK_DATA_OBJECT_TYPE_FRAME_ID: