]> cvs.zerfleddert.de Git - proxmark3-svn/commitdiff
fixed stupid 64-bit formatting for x86/amd64 and unix/windows
authorroel@libnfc.org <roel@libnfc.org@ef4ab9da-24cd-11de-8aaa-f3a34680c41f>
Thu, 28 Feb 2013 22:22:24 +0000 (22:22 +0000)
committerroel@libnfc.org <roel@libnfc.org@ef4ab9da-24cd-11de-8aaa-f3a34680c41f>
Thu, 28 Feb 2013 22:22:24 +0000 (22:22 +0000)
12 files changed:
client/cmdhf14a.c
client/cmdhflegic.c
client/cmdhfmf.c
client/cmdlfti.c
client/cmdmain.c
client/flash.c
client/flasher.c
client/nonce2key/nonce2key.c
client/nonce2key/nonce2key.h
client/proxmark3.c
client/proxmark3.h
tools/nonce2key/nonce2key.c

index ad89fe96e5d4b5743bb22fe90f2d8e2a9790be45..78c269cbbd1434fd9aebd28904b79526ea2ff60d 100644 (file)
@@ -391,7 +391,7 @@ int CmdHF14ASim(const char *Cmd)
 
        // Are we handling the (optional) second part uid?
        if (long_uid > 0xffffffff) {
 
        // Are we handling the (optional) second part uid?
        if (long_uid > 0xffffffff) {
-               PrintAndLog("Emulating ISO/IEC 14443 type A tag with 7 byte UID (%014llx)",long_uid);
+               PrintAndLog("Emulating ISO/IEC 14443 type A tag with 7 byte UID (%014"llx")",long_uid);
                // Store the second part
                c.arg[2] = (long_uid & 0xffffffff);
                long_uid >>= 32;
                // Store the second part
                c.arg[2] = (long_uid & 0xffffffff);
                long_uid >>= 32;
index 26a2c7241feff2d324dfe9ec3718ab56a16cc6dd..2719029a36ba057936dc2ce02300e4b80db1a583 100644 (file)
@@ -332,7 +332,7 @@ int CmdLegicRfSim(const char *Cmd)
 int CmdLegicRfWrite(const char *Cmd)
 {
     UsbCommand c={CMD_WRITER_LEGIC_RF};
 int CmdLegicRfWrite(const char *Cmd)
 {
     UsbCommand c={CMD_WRITER_LEGIC_RF};
-    int res = sscanf(Cmd, " 0x%llx 0x%llx", &c.arg[0], &c.arg[1]);
+    int res = sscanf(Cmd, " 0x%"llx" 0x%"llx, &c.arg[0], &c.arg[1]);
        if(res != 2) {
                PrintAndLog("Please specify the offset and length as two hex strings");
         return -1;
        if(res != 2) {
                PrintAndLog("Please specify the offset and length as two hex strings");
         return -1;
index cea95ff0aa420f621d9a20d17b5668eb96fc2a90..11288085ecd436c80b3fa4763dc2b48959eca9fc 100644 (file)
@@ -76,13 +76,13 @@ start:
                PrintAndLog("Key not found (lfsr_common_prefix list is null). Nt=%08x", nt);    \r
        } else {\r
                printf("------------------------------------------------------------------\n");\r
                PrintAndLog("Key not found (lfsr_common_prefix list is null). Nt=%08x", nt);    \r
        } else {\r
                printf("------------------------------------------------------------------\n");\r
-               PrintAndLog("Key found:%012llx \n", r_key);\r
+               PrintAndLog("Key found:%012"llx" \n", r_key);\r
 \r
                num_to_bytes(r_key, 6, keyBlock);\r
                isOK = mfCheckKeys(0, 0, 1, keyBlock, &r_key);\r
        }\r
        if (!isOK) \r
 \r
                num_to_bytes(r_key, 6, keyBlock);\r
                isOK = mfCheckKeys(0, 0, 1, keyBlock, &r_key);\r
        }\r
        if (!isOK) \r
-               PrintAndLog("Found valid key:%012llx", r_key);\r
+               PrintAndLog("Found valid key:%012"llx, r_key);\r
        else\r
        {\r
                if (isOK != 2) PrintAndLog("Found invalid key. ( Nt=%08x ,Trying use it to run again...", nt);  \r
        else\r
        {\r
                if (isOK != 2) PrintAndLog("Found invalid key. ( Nt=%08x ,Trying use it to run again...", nt);  \r
@@ -573,7 +573,7 @@ int CmdHF14AMfNested(const char *Cmd)
                if (res)\r
                        res = mfCheckKeys(trgBlockNo, trgKeyType, 8, &keyBlock[6 * 8], &key64);\r
                if (!res) {\r
                if (res)\r
                        res = mfCheckKeys(trgBlockNo, trgKeyType, 8, &keyBlock[6 * 8], &key64);\r
                if (!res) {\r
-                       PrintAndLog("Found valid key:%012llx", key64);\r
+                       PrintAndLog("Found valid key:%012"llx, key64);\r
 \r
                        // transfer key to the emulator\r
                        if (transferToEml) {\r
 \r
                        // transfer key to the emulator\r
                        if (transferToEml) {\r
@@ -633,7 +633,7 @@ int CmdHF14AMfNested(const char *Cmd)
                                        if (res)\r
                                                res = mfCheckKeys(trgBlockNo, trgKeyType, 8, &keyBlock[6 * 8], &key64);\r
                                        if (!res) {\r
                                        if (res)\r
                                                res = mfCheckKeys(trgBlockNo, trgKeyType, 8, &keyBlock[6 * 8], &key64);\r
                                        if (!res) {\r
-                                               PrintAndLog("Found valid key:%012llx", key64);  \r
+                                               PrintAndLog("Found valid key:%012"llx, key64);\r
                                                e_sector[trgBlockNo / 4].foundKey[trgKeyType] = 1;\r
                                                e_sector[trgBlockNo / 4].Key[trgKeyType] = key64;\r
                                        }\r
                                                e_sector[trgBlockNo / 4].foundKey[trgKeyType] = 1;\r
                                                e_sector[trgBlockNo / 4].Key[trgKeyType] = key64;\r
                                        }\r
@@ -646,7 +646,7 @@ int CmdHF14AMfNested(const char *Cmd)
                PrintAndLog("|sec|key A           |res|key B           |res|");\r
                PrintAndLog("|---|----------------|---|----------------|---|");\r
                for (i = 0; i < SectorsCnt; i++) {\r
                PrintAndLog("|sec|key A           |res|key B           |res|");\r
                PrintAndLog("|---|----------------|---|----------------|---|");\r
                for (i = 0; i < SectorsCnt; i++) {\r
-                       PrintAndLog("|%03d|  %012llx  | %d |  %012llx  | %d |", i, \r
+                       PrintAndLog("|%03d|  %012"llx"  | %d |  %012"llx"  | %d |", i,\r
                                e_sector[i].Key[0], e_sector[i].foundKey[0], e_sector[i].Key[1], e_sector[i].foundKey[1]);\r
                }\r
                PrintAndLog("|---|----------------|---|----------------|---|");\r
                                e_sector[i].Key[0], e_sector[i].foundKey[0], e_sector[i].Key[1], e_sector[i].foundKey[1]);\r
                }\r
                PrintAndLog("|---|----------------|---|----------------|---|");\r
@@ -843,7 +843,7 @@ int CmdHF14AMfChk(const char *Cmd)
                                        }\r
                                        memset(keyBlock + 6 * keycnt, 0, 6);\r
                                        num_to_bytes(strtoll(buf, NULL, 16), 6, keyBlock + 6*keycnt);\r
                                        }\r
                                        memset(keyBlock + 6 * keycnt, 0, 6);\r
                                        num_to_bytes(strtoll(buf, NULL, 16), 6, keyBlock + 6*keycnt);\r
-                                       PrintAndLog("chk custom key[%d] %012llx", keycnt, bytes_to_num(keyBlock + 6*keycnt, 6));\r
+                                       PrintAndLog("chk custom key[%d] %012"llx, keycnt, bytes_to_num(keyBlock + 6*keycnt, 6));\r
                                        keycnt++;\r
                                }\r
                        } else {\r
                                        keycnt++;\r
                                }\r
                        } else {\r
@@ -873,7 +873,7 @@ int CmdHF14AMfChk(const char *Cmd)
                                res = mfCheckKeys(b, t, size, keyBlock +6*c, &key64);\r
                                if (res !=1) {\r
                                        if (!res) {\r
                                res = mfCheckKeys(b, t, size, keyBlock +6*c, &key64);\r
                                if (res !=1) {\r
                                        if (!res) {\r
-                                               PrintAndLog("Found valid key:[%012llx]",key64);\r
+                                               PrintAndLog("Found valid key:[%012"llx"]",key64);\r
                                                if (transferToEml) {\r
                                                        uint8_t block[16];\r
                                                        mfEmlGetMem(block, get_trailer_block(b), 1);\r
                                                if (transferToEml) {\r
                                                        uint8_t block[16];\r
                                                        mfEmlGetMem(block, get_trailer_block(b), 1);\r
@@ -1205,7 +1205,7 @@ int CmdHF14AMfEKeyPrn(const char *Cmd)
                }\r
                keyA = bytes_to_num(data, 6);\r
                keyB = bytes_to_num(data + 10, 6);\r
                }\r
                keyA = bytes_to_num(data, 6);\r
                keyB = bytes_to_num(data + 10, 6);\r
-               PrintAndLog("|%03d|  %012llx  |  %012llx  |", i, keyA, keyB);\r
+               PrintAndLog("|%03d|  %012"llx"  |  %012"llx"  |", i, keyA, keyB);\r
        }\r
        PrintAndLog("|---|----------------|----------------|");\r
        \r
        }\r
        PrintAndLog("|---|----------------|----------------|");\r
        \r
index 5a88f57953e3dc2f039d70b121ca116a6d1fedbd..26128e2f029f4a37ded25678348a8c3646a086ae 100644 (file)
@@ -274,7 +274,7 @@ int CmdTIWrite(const char *Cmd)
   UsbCommand c = {CMD_WRITE_TI_TYPE};
   int res = 0;
 
   UsbCommand c = {CMD_WRITE_TI_TYPE};
   int res = 0;
 
-  res = sscanf(Cmd, "0x%llx 0x%llx 0x%llx ", &c.arg[0], &c.arg[1], &c.arg[2]);
+  res = sscanf(Cmd, "0x%"PRIu64"x 0x%"PRIu64"x 0x%"PRIu64"x ", &c.arg[0], &c.arg[1], &c.arg[2]);
   if (res == 2) c.arg[2]=0;
   if (res < 2)
     PrintAndLog("Please specify the data as two hex strings, optionally the CRC as a third");
   if (res == 2) c.arg[2]=0;
   if (res < 2)
     PrintAndLog("Please specify the data as two hex strings, optionally the CRC as a third");
index 62eef122aa2563a50b3540f78ff59e902692758d..a9a37ad1a2ba56d63451c05d58dd3ec462e348ab 100644 (file)
@@ -103,10 +103,10 @@ void UsbCommandReceived(UsbCommand *UC)
   /*
   //  Debug
   printf("UsbCommand length[len=%zd]\n",sizeof(UsbCommand));
   /*
   //  Debug
   printf("UsbCommand length[len=%zd]\n",sizeof(UsbCommand));
-  printf("  cmd[len=%zd]: %llx\n",sizeof(UC->cmd),UC->cmd);
-  printf(" arg0[len=%zd]: %llx\n",sizeof(UC->arg[0]),UC->arg[0]);
-  printf(" arg1[len=%zd]: %llx\n",sizeof(UC->arg[1]),UC->arg[1]);
-  printf(" arg2[len=%zd]: %llx\n",sizeof(UC->arg[2]),UC->arg[2]);
+  printf("  cmd[len=%zd]: %"llx"\n",sizeof(UC->cmd),UC->cmd);
+  printf(" arg0[len=%zd]: %"llx"\n",sizeof(UC->arg[0]),UC->arg[0]);
+  printf(" arg1[len=%zd]: %"llx"\n",sizeof(UC->arg[1]),UC->arg[1]);
+  printf(" arg2[len=%zd]: %"llx"\n",sizeof(UC->arg[2]),UC->arg[2]);
   printf(" data[len=%zd]: %02x%02x%02x...\n",sizeof(UC->d.asBytes),UC->d.asBytes[0],UC->d.asBytes[1],UC->d.asBytes[2]);
   */
 
   printf(" data[len=%zd]: %02x%02x%02x...\n",sizeof(UC->d.asBytes),UC->d.asBytes[0],UC->d.asBytes[1],UC->d.asBytes[2]);
   */
 
index 4d091126273a773a044b8e898f56cd533b15ef9f..4af0dea82cc5b66a562c1492198c9076f3e57f4e 100644 (file)
@@ -11,6 +11,7 @@
 #include <stdio.h>
 #include <string.h>
 #include <stdlib.h>
 #include <stdio.h>
 #include <string.h>
 #include <stdlib.h>
+#include "proxmark3.h"
 #include "sleep.h"
 //#include "proxusb.h"
 #include "flash.h"
 #include "sleep.h"
 //#include "proxusb.h"
 #include "flash.h"
@@ -296,7 +297,7 @@ static int get_proxmark_state(uint32_t *state)
                        *state = resp.arg[0];
                        break;
                default:
                        *state = resp.arg[0];
                        break;
                default:
-                       fprintf(stderr, "Error: Couldn't get proxmark state, bad response type: 0x%04llx\n", resp.cmd);
+                       fprintf(stderr, "Error: Couldn't get proxmark state, bad response type: 0x%04"llx"\n", resp.cmd);
                        return -1;
                        break;
        }
                        return -1;
                        break;
        }
@@ -358,7 +359,7 @@ static int wait_for_ack(void)
   UsbCommand ack;
        ReceiveCommand(&ack);
        if (ack.cmd != CMD_ACK) {
   UsbCommand ack;
        ReceiveCommand(&ack);
        if (ack.cmd != CMD_ACK) {
-               printf("Error: Unexpected reply 0x%04llx (expected ACK)\n", ack.cmd);
+               printf("Error: Unexpected reply 0x%04"llx" (expected ACK)\n", ack.cmd);
                return -1;
        }
        return 0;
                return -1;
        }
        return 0;
index 2e8bd2edb02372c201f09335af8ac336b7cbb115..f2a8e7c8172e3774a0ef55884f16e656a91c4a17 100644 (file)
@@ -10,7 +10,7 @@
 #include <stdlib.h>
 #include <string.h>
 #include "sleep.h"
 #include <stdlib.h>
 #include <string.h>
 #include "sleep.h"
-//#include "proxusb.h"
+#include "proxmark3.h"
 #include "flash.h"
 #include "uart.h"
 #include "usb_cmd.h"
 #include "flash.h"
 #include "uart.h"
 #include "usb_cmd.h"
@@ -21,10 +21,10 @@ static char* serial_port_name;
 void cmd_debug(UsbCommand* UC) {
   //  Debug
   printf("UsbCommand length[len=%zd]\n",sizeof(UsbCommand));
 void cmd_debug(UsbCommand* UC) {
   //  Debug
   printf("UsbCommand length[len=%zd]\n",sizeof(UsbCommand));
-  printf("  cmd[len=%zd]: %016llx\n",sizeof(UC->cmd),UC->cmd);
-  printf(" arg0[len=%zd]: %016llx\n",sizeof(UC->arg[0]),UC->arg[0]);
-  printf(" arg1[len=%zd]: %016llx\n",sizeof(UC->arg[1]),UC->arg[1]);
-  printf(" arg2[len=%zd]: %016llx\n",sizeof(UC->arg[2]),UC->arg[2]);
+  printf("  cmd[len=%zd]: %016"llx"\n",sizeof(UC->cmd),UC->cmd);
+  printf(" arg0[len=%zd]: %016"llx"\n",sizeof(UC->arg[0]),UC->arg[0]);
+  printf(" arg1[len=%zd]: %016"llx"\n",sizeof(UC->arg[1]),UC->arg[1]);
+  printf(" arg2[len=%zd]: %016"llx"\n",sizeof(UC->arg[2]),UC->arg[2]);
   printf(" data[len=%zd]: ",sizeof(UC->d.asBytes));
   for (size_t i=0; i<16; i++) {
     printf("%02x",UC->d.asBytes[i]);
   printf(" data[len=%zd]: ",sizeof(UC->d.asBytes));
   for (size_t i=0; i<16; i++) {
     printf("%02x",UC->d.asBytes[i]);
index 032b15c4be11ad7f6635801d38e83b7caecfbff1..7459f1bb59aa44653f2205622bf51f5d71ad6211 100644 (file)
 // MIFARE Darkside hack
 //-----------------------------------------------------------------------------
 
 // MIFARE Darkside hack
 //-----------------------------------------------------------------------------
 
+#define __STDC_FORMAT_MACROS
+#include <inttypes.h>
+#define llx PRIx64
+
 #include "nonce2key.h"
 #include "ui.h"
 
 #include "nonce2key.h"
 #include "ui.h"
 
@@ -23,7 +27,7 @@ int nonce2key(uint32_t uid, uint32_t nt, uint64_t par_info, uint64_t ks_info, ui
   // Reset the last three significant bits of the reader nonce
   nr &= 0xffffff1f;
   
   // Reset the last three significant bits of the reader nonce
   nr &= 0xffffff1f;
   
-  PrintAndLog("\nuid(%08x) nt(%08x) par(%016llx) ks(%016llx)\n\n",uid,nt,par_info,ks_info);
+  PrintAndLog("\nuid(%08x) nt(%08x) par(%016"llx") ks(%016"llx")\n\n",uid,nt,par_info,ks_info);
 
   for (pos=0; pos<8; pos++)
   {
 
   for (pos=0; pos<8; pos++)
   {
index acde7c8885e98b847d582e0fae704aee510da529..8ae6050468001a3d8773e2fe30a7381b4ef1e2d0 100644 (file)
@@ -13,7 +13,6 @@
 #ifndef __NONCE2KEY_H
 #define __NONCE2KEY_H
 
 #ifndef __NONCE2KEY_H
 #define __NONCE2KEY_H
 
-#include <inttypes.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include "crapto1.h"
 #include <stdio.h>
 #include <stdlib.h>
 #include "crapto1.h"
index 5ac7cd0e2c137003a79ea25667f78b3a73be84dc..7226d3ae2b2d004e7a86c8c91807a0f098f6969b 100644 (file)
@@ -197,6 +197,9 @@ static void *main_loop(void *targ) {
 
 int main(int argc, char* argv[]) {
   srand(time(0));
 
 int main(int argc, char* argv[]) {
   srand(time(0));
+  
+  printf("lala: %08"llx"",(uint64_t)0xaabb11223344);
+  return 0;
 
   if (argc < 2) {
     printf("syntax: %s <port>\n\n",argv[0]);
 
   if (argc < 2) {
     printf("syntax: %s <port>\n\n",argv[0]);
index 2875511b4f3de7ad040a6b0828be5e1d9ecbfe64..0bf5a9ebf7b74f9ea75ede1e8a76900bf0649a31 100644 (file)
 #ifndef PROXMARK3_H__
 #define PROXMARK3_H__
 
 #ifndef PROXMARK3_H__
 #define PROXMARK3_H__
 
+#define __STDC_FORMAT_MACROS
+#include <inttypes.h>
+#define llx PRIx64
+
 #include <usb.h>
 #include "usb_cmd.h"
 
 #include <usb.h>
 #include "usb_cmd.h"
 
index afe1b7ef800c87be2286277ffb077fb90cb5d9d0..32ea0a68dd454d2a77a335b93c31f2aca9d2ea0e 100644 (file)
@@ -1,5 +1,7 @@
 #include "crapto1.h"
 #include "crapto1.h"
+#define __STDC_FORMAT_MACROS
 #include <inttypes.h>
 #include <inttypes.h>
+#define llx PRIx64
 #include <stdio.h>
 typedef unsigned char byte_t;
 
 #include <stdio.h>
 typedef unsigned char byte_t;
 
@@ -18,13 +20,13 @@ int main(const int argc, const char* argv[]) {
   }
   sscanf(argv[1],"%08x",&uid);
   sscanf(argv[2],"%08x",&nt);
   }
   sscanf(argv[1],"%08x",&uid);
   sscanf(argv[2],"%08x",&nt);
-  sscanf(argv[3],"%016llx",&par_info);
-  sscanf(argv[4],"%016llx",&ks_info);
+  sscanf(argv[3],"%016"llx,&par_info);
+  sscanf(argv[4],"%016"llx,&ks_info);
   
   // Reset the last three significant bits of the reader nonce
   nr &= 0xffffff1f;
   
   
   // Reset the last three significant bits of the reader nonce
   nr &= 0xffffff1f;
   
-  printf("\nuid(%08x) nt(%08x) par(%016llx) ks(%016llx)\n\n",uid,nt,par_info,ks_info);
+  printf("\nuid(%08x) nt(%08x) par(%016"llx") ks(%016"llx")\n\n",uid,nt,par_info,ks_info);
 
   for (pos=0; pos<8; pos++)
   {
 
   for (pos=0; pos<8; pos++)
   {
@@ -50,7 +52,7 @@ int main(const int argc, const char* argv[]) {
   state = lfsr_common_prefix(nr,rr,ks3x,par);
   lfsr_rollback_word(state,uid^nt,0);
   crypto1_get_lfsr(state,&key_recovered);
   state = lfsr_common_prefix(nr,rr,ks3x,par);
   lfsr_rollback_word(state,uid^nt,0);
   crypto1_get_lfsr(state,&key_recovered);
-  printf("\nkey recovered: %012llx\n\n",key_recovered);
+  printf("\nkey recovered: %012"llx"\n\n",key_recovered);
   crypto1_destroy(state);
   
   return 0;
   crypto1_destroy(state);
   
   return 0;
Impressum, Datenschutz