stkutil: Add power off card command parser
authorYang Gu <yang.gu@intel.com>
Thu, 13 May 2010 10:48:39 +0000 (18:48 +0800)
committerDenis Kenzior <denkenz@gmail.com>
Thu, 13 May 2010 20:31:59 +0000 (15:31 -0500)
src/stkutil.c

index 52f1ef3..768dd38 100644 (file)
@@ -2635,6 +2635,19 @@ static gboolean parse_perform_card_apdu(struct stk_command *command,
        return TRUE;
 }
 
+static gboolean parse_power_off_card(struct stk_command *command,
+                                       struct comprehension_tlv_iter *iter)
+{
+       if (command->src != STK_DEVICE_IDENTITY_TYPE_UICC)
+               return FALSE;
+
+       if ((command->dst < STK_DEVICE_IDENTITY_TYPE_CARD_READER_0) ||
+                       (command->dst > STK_DEVICE_IDENTITY_TYPE_CARD_READER_7))
+               return FALSE;
+
+       return TRUE;
+}
+
 struct stk_command *stk_command_new_from_pdu(const unsigned char *pdu,
                                                unsigned int len)
 {
@@ -2738,6 +2751,9 @@ struct stk_command *stk_command_new_from_pdu(const unsigned char *pdu,
        case STK_COMMAND_TYPE_PERFORM_CARD_APDU:
                ok = parse_perform_card_apdu(command, &iter);
                break;
+       case STK_COMMAND_TYPE_POWER_OFF_CARD:
+               ok = parse_power_off_card(command, &iter);
+               break;
        default:
                ok = FALSE;
                break;