From 478d3d92eb0fea6e927e6636b0d3cc57f76cf6ed Mon Sep 17 00:00:00 2001 From: Romain Tartiere Date: Mon, 14 May 2012 13:45:13 +0000 Subject: [PATCH] Fix a bunch of signed/unsigned comparisons. --- src/mfoc.c | 11 ++++++----- src/mfoc.h | 12 ++++++------ 2 files changed, 12 insertions(+), 11 deletions(-) diff --git a/src/mfoc.c b/src/mfoc.c index bb9a43b..2c9296a 100644 --- a/src/mfoc.c +++ b/src/mfoc.c @@ -735,7 +735,8 @@ int mf_enhanced_auth(int e_sector, int a_sector, mftag t, mfreader r, denonce *d // Transmit reader-answer // fprintf(stdout, "\t{Ar}:\t"); // print_hex_par(ArEnc, 64, ArEncPar); - if (((RxLen = nfc_initiator_transceive_bits(r.pdi, ArEnc, 64, ArEncPar, Rx, RxPar)) < 0) || (RxLen != 32)) { + int res; + if (((res = nfc_initiator_transceive_bits(r.pdi, ArEnc, 64, ArEncPar, Rx, RxPar)) < 0) || (res != 32)) { ERR ("Reader-answer transfer error, exiting.."); exit (EXIT_FAILURE); } @@ -764,7 +765,7 @@ int mf_enhanced_auth(int e_sector, int a_sector, mftag t, mfreader r, denonce *d } // Sending the encrypted Auth command - if ((RxLen = nfc_initiator_transceive_bits(r.pdi, AuthEnc, 32, AuthEncPar,Rx, RxPar)) < 0) { + if (nfc_initiator_transceive_bits(r.pdi, AuthEnc, 32, AuthEncPar,Rx, RxPar) < 0) { fprintf(stdout, "Error requesting encrypted tag-nonce\n"); exit (EXIT_FAILURE); } @@ -793,7 +794,7 @@ int mf_enhanced_auth(int e_sector, int a_sector, mftag t, mfreader r, denonce *d ArEncPar[i] = filter(pcs->odd) ^ oddparity(Nt); } nfc_device_set_property_bool(r.pdi,NP_HANDLE_PARITY,false); - if (((RxLen = nfc_initiator_transceive_bits(r.pdi, ArEnc, 64, ArEncPar, Rx, RxPar)) < 0) || (RxLen != 32)) { + if (((res = nfc_initiator_transceive_bits(r.pdi, ArEnc, 64, ArEncPar, Rx, RxPar)) < 0) || (res != 32)) { ERR ("Reader-answer transfer error, exiting.."); exit (EXIT_FAILURE); } @@ -822,7 +823,7 @@ int mf_enhanced_auth(int e_sector, int a_sector, mftag t, mfreader r, denonce *d // Encrypt the parity bits with the 4 plaintext bytes AuthEncPar[i] = filter(pcs->odd) ^ oddparity(Auth[i]); } - if ((RxLen = nfc_initiator_transceive_bits(r.pdi, AuthEnc, 32, AuthEncPar,Rx, RxPar)) < 0) { + if (nfc_initiator_transceive_bits(r.pdi, AuthEnc, 32, AuthEncPar,Rx, RxPar) < 0) { ERR ("while requesting encrypted tag-nonce"); exit (EXIT_FAILURE); } @@ -920,7 +921,7 @@ int compar_special_int(const void * a, const void * b) { } countKeys * uniqsort(uint64_t * possibleKeys, uint32_t size) { - int i, j = 0; + unsigned int i, j = 0; int count = 0; countKeys *our_counts; diff --git a/src/mfoc.h b/src/mfoc.h index 572078b..6e159bf 100644 --- a/src/mfoc.h +++ b/src/mfoc.h @@ -33,9 +33,9 @@ typedef struct { typedef struct { u_int32_t *distances; - u_int32_t median; - u_int32_t num_distances; - u_int32_t tolerance; + int32_t median; + int32_t num_distances; + int32_t tolerance; uint8_t parity[3]; // used for 3 bits of parity information } denonce; // Revealed information about nonce @@ -43,8 +43,8 @@ typedef struct { nfc_target nt; sector * sectors; // Allocate later, we do not know the number of sectors yet sector e_sector; // Exploit sector - uint32_t num_sectors; - uint32_t num_blocks; + int32_t num_sectors; + int32_t num_blocks; uint32_t uid; bool b4K; } mftag; @@ -56,7 +56,7 @@ typedef struct { typedef struct { uint64_t *brokenKeys; - uint32_t size; + int32_t size; } bKeys; typedef struct {