Fix #1 for pm3 iclass simulation, remove erroneous extra bit after transmission
[legacy-proxmark3.git] / include / mifare.h
blobe2b7a7c5548e2fd37dde3864173cfe08ea95a8b7
1 //-----------------------------------------------------------------------------
2 // (c) 2012 Roel Verdult
3 //
4 // This code is licensed to you under the terms of the GNU GPL, version 2 or,
5 // at your option, any later version. See the LICENSE.txt file for the text of
6 // the license.
7 //-----------------------------------------------------------------------------
8 // MIFARE type prototyping
9 //-----------------------------------------------------------------------------
11 #ifndef _MIFARE_H_
12 #define _MIFARE_H_
14 #include "common.h"
16 //-----------------------------------------------------------------------------
17 // ISO 14443A
18 //-----------------------------------------------------------------------------
19 typedef struct {
20 byte_t uid[10];
21 byte_t uidlen;
22 byte_t atqa[2];
23 byte_t sak;
24 byte_t ats_len;
25 byte_t ats[256];
26 } __attribute__((__packed__)) iso14a_card_select_t;
28 typedef enum ISO14A_COMMAND {
29 ISO14A_CONNECT = 1,
30 ISO14A_NO_DISCONNECT = 2,
31 ISO14A_APDU = 4,
32 ISO14A_RAW = 8,
33 ISO14A_REQUEST_TRIGGER = 0x10,
34 ISO14A_APPEND_CRC = 0x20,
35 ISO14A_SET_TIMEOUT = 0x40,
36 ISO14A_NO_SELECT = 0x80
37 } iso14a_command_t;
39 #endif // _MIFARE_H_