diff options
author | Denis Kenzior <denkenz@gmail.com> | 2010-03-11 14:43:59 -0600 |
---|---|---|
committer | Denis Kenzior <denkenz@gmail.com> | 2010-03-15 21:02:06 -0500 |
commit | 44476dac9e66267549337ab082bb41d6af069f18 (patch) | |
tree | 715d148bb5466595544b848ad9e13e94685c3fdf /src/stkutil.c | |
parent | e5dff20ff5bfd3052c190374315d21ed8d7eda78 (diff) | |
download | ofono-44476dac9e66267549337ab082bb41d6af069f18.tar.bz2 |
Refactor: stk configuration capability parameters
Diffstat (limited to 'src/stkutil.c')
-rw-r--r-- | src/stkutil.c | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/src/stkutil.c b/src/stkutil.c index 136efd59..6cd539b1 100644 --- a/src/stkutil.c +++ b/src/stkutil.c @@ -121,24 +121,26 @@ static gboolean parse_dataobj_subaddress(struct comprehension_tlv_iter *iter, } /* Defined in TS 102.223 Section 8.4 */ -static gboolean parse_dataobj_capability_configuration_parameters( - struct comprehension_tlv_iter *iter, void *user) +static gboolean parse_dataobj_ccp(struct comprehension_tlv_iter *iter, + void *user) { - struct stk_capability_configuration_parameters *ccp = user; + struct stk_ccp *ccp = user; const unsigned char *data; unsigned int len; if (comprehension_tlv_iter_get_tag(iter) != - STK_DATA_OBJECT_TYPE_CAPABILITY_CONFIGURATION_PARAMETERS) + STK_DATA_OBJECT_TYPE_CCP) return FALSE; len = comprehension_tlv_iter_get_length(iter); if (len < 1) return FALSE; + if (len > sizeof(ccp->ccp)) + return FALSE; + data = comprehension_tlv_iter_get_data(iter); - ccp->ccp_len = len; - ccp->ccp = g_malloc(len); + ccp->len = len; memcpy(ccp->ccp, data, len); return TRUE; @@ -483,8 +485,8 @@ static dataobj_handler handler_for_type(enum stk_data_object_type type) return parse_dataobj_alpha_id; case STK_DATA_OBJECT_TYPE_SUBADDRESS: return parse_dataobj_subaddress; - case STK_DATA_OBJECT_TYPE_CAPABILITY_CONFIGURATION_PARAMETERS: - return parse_dataobj_capability_configuration_parameters; + case STK_DATA_OBJECT_TYPE_CCP: + return parse_dataobj_ccp; case STK_DATA_OBJECT_TYPE_DURATION: return parse_dataobj_duration; case STK_DATA_OBJECT_TYPE_ITEM: |