From: Denis Kenzior Date: Tue, 2 Mar 2010 00:16:23 +0000 (-0600) Subject: stk: Validate src/dst combination X-Git-Tag: 0.19~4 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=b06cce24d817d971149512f3c0249c85731c523a;p=platform%2Fupstream%2Fofono.git stk: Validate src/dst combination --- diff --git a/src/stkutil.c b/src/stkutil.c index 39eb54a..337868b 100644 --- a/src/stkutil.c +++ b/src/stkutil.c @@ -347,6 +347,12 @@ static gboolean parse_display_text(struct stk_command *command, struct stk_command_display_text *obj = &command->display_text; gboolean ret; + if (command->src != STK_DEVICE_IDENTITY_TYPE_UICC) + return FALSE; + + if (command->dst != STK_DEVICE_IDENTITY_TYPE_DISPLAY) + return FALSE; + obj->frame_id = 0xFF; ret = parse_dataobj(iter, STK_DATA_OBJECT_TYPE_TEXT, @@ -383,6 +389,12 @@ static gboolean parse_get_inkey(struct stk_command *command, struct stk_command_display_text *obj = &command->get_inkey; gboolean ret; + if (command->src != STK_DEVICE_IDENTITY_TYPE_UICC) + return FALSE; + + if (command->dst != STK_DEVICE_IDENTITY_TYPE_TERMINAL) + return FALSE; + obj->frame_id = 0xFF; ret = parse_dataobj(iter, STK_DATA_OBJECT_TYPE_TEXT, @@ -421,6 +433,12 @@ static gboolean parse_get_input(struct stk_command *command, obj->frame_id = 0xFF; + if (command->src != STK_DEVICE_IDENTITY_TYPE_UICC) + return FALSE; + + if (command->dst != STK_DEVICE_IDENTITY_TYPE_TERMINAL) + return FALSE; + ret = parse_dataobj(iter, STK_DATA_OBJECT_TYPE_TEXT, DATAOBJ_FLAG_MANDATORY | DATAOBJ_FLAG_MINIMUM, &obj->text,