]> git.zerfleddert.de Git - proxmark3-svn/blobdiff - common/desfire.h
FIX: 'EMV compiling' - Makefiles are very picky about how things are done. its parse...
[proxmark3-svn] / common / desfire.h
index 912ca9ffe04c4c4d240a1b8d14b98900928de898..a2b0599e949891557f14284e4d20332f961e05dc 100644 (file)
@@ -1,9 +1,10 @@
 #ifndef __DESFIRE_H
 #define __DESFIRE_H
 
+#include <string.h>
+#include <stdarg.h>
 #include "aes.h"
-#define DESFIRE(tag) ((struct desfire_tag *) tag)
-#define DESFIRE_KEY(key) ((struct desfire_key *) key)
+#include "mifare.h"
 
 #define MAX_CRYPTO_BLOCK_SIZE 16
 /* Mifare DESFire EV1 Application crypto operations */
@@ -65,8 +66,9 @@ enum DESFIRE_CRYPTOALGO {
        T_AES = 0x03
 };
 
-struct desfire_key {
 
+#define DESFIRE_KEY(key) ((struct desfire_key *) key)
+struct desfire_key {
     enum DESFIRE_CRYPTOALGO type;
     uint8_t data[24];
     // DES_key_schedule ks1;
@@ -77,9 +79,9 @@ struct desfire_key {
     uint8_t cmac_sk2[24];
     uint8_t aes_version;
 };
-
 typedef struct desfire_key *desfirekey_t;
 
+#define DESFIRE(tag) ((struct desfire_tag *) tag)
 struct desfire_tag {
     iso14a_card_select_t info;
     int active;
@@ -108,8 +110,6 @@ enum DESFIRE_FILE_TYPES {
     MDFT_CYCLIC_RECORD_FILE_WITH_BACKUP = 0x04
 };
 
-
-
 enum DESFIRE_STATUS {
     OPERATION_OK                               = 0x00,
     NO_CHANGES                                         = 0x0c,
Impressum, Datenschutz