]> cvs.zerfleddert.de Git - proxmark3-svn/commitdiff
some @iceman1001 s coverty scan fixes
authormarshmellow42 <marshmellowrf@gmail.com>
Fri, 8 Jan 2016 23:26:56 +0000 (18:26 -0500)
committermarshmellow42 <marshmellowrf@gmail.com>
Fri, 8 Jan 2016 23:26:56 +0000 (18:26 -0500)
great work!

armsrc/BigBuf.c
armsrc/des.c
client/cmdhfepa.c
client/cmdhficlass.c
client/loclass/cipherutils.c
client/util.c
client/util.h

index 8f9ee4beb7a2e58a02b35996d7645575cc1f7abb..da3b0ce27bcfa99b0f238fc8c330254f8e189c7b 100644 (file)
@@ -184,7 +184,7 @@ bool RAMFUNC LogTrace(const uint8_t *btBytes, uint16_t iLen, uint32_t timestamp_
        traceLen += iLen;
 
        // parity bytes
-       if (iLen != 0) {
+       if (num_paritybytes != 0) {
                if (parity != NULL) {
                        memcpy(trace + traceLen, parity, num_paritybytes);
                } else {
index a81df9c8d4234c7bd2bd5432b0a503f9a1c6ba36..f1aa80da20a0f4d8eedc7c4b0d84a9d6d882d555 100644 (file)
@@ -274,7 +274,7 @@ uint32_t des_f(uint32_t r, uint8_t* kr){
        uint64_t data;
        uint8_t *sbp; /* sboxpointer */ 
        permute((uint8_t*)e_permtab, (uint8_t*)&r, (uint8_t*)&data);
-       for(i=0; i<7; ++i)
+       for(i=0; i<6; ++i)
                ((uint8_t*)&data)[i] ^= kr[i];
        
        /* Sbox substitution */
index e9c63f20b02f7f88fae741f4e24780a763bff910..f9f69a885c7f149db1e1b8fbe9643b8f6373c171 100644 (file)
@@ -58,6 +58,7 @@ int CmdHFEPACollectPACENonces(const char *Cmd)
                        }
                        // print nonce
                        PrintAndLog("Length: %d, Nonce: %s", nonce_length, nonce);
+                       free(nonce);
                }
                if (i < n - 1) {
                        sleep(d);
index 99070e18e8d847f0ecf0a61c22b29ce8fc7f9d47..6c85e1c1100d8299310e2e3806227694f42ec475 100644 (file)
@@ -406,7 +406,7 @@ int CmdHFiClassDecrypt(const char *Cmd) {
        fclose(f);
 
        saveFile(outfilename,"bin", decrypted, blocknum*8);
-
+       free(decrypted);
        return 0;
 }
 
index 83b3c9fa2476f6454ac507e777224617795a3bd3..9a8256bb38a700990fe6bddf4701116cdbaeac40 100644 (file)
@@ -171,6 +171,7 @@ void printarr(char * name, uint8_t* arr, int len)
        }
        cx += snprintf(output+cx,outsize-cx,"};");
        prnlog(output);
+       free(output);
 }
 
 void printvar(char * name, uint8_t* arr, int len)
@@ -188,6 +189,7 @@ void printvar(char * name, uint8_t* arr, int len)
        }
 
        prnlog(output);
+       free(output);
 }
 
 void printarr_human_readable(char * title, uint8_t* arr, int len)
index 32c06e910a31480c2443fb1edfaa70f9b33a35fb..c4f7d200f61bb096949c2e5939c9c48349da7431 100644 (file)
@@ -497,3 +497,13 @@ void xor(unsigned char *dst, unsigned char *src, size_t len) {
 int32_t le24toh (uint8_t data[3]) {
     return (data[2] << 16) | (data[1] << 8) | data[0];
 }
+
+// RotateLeft - Ultralight, Desfire, works on byte level
+// 00-01-02  >> 01-02-00
+void rol(uint8_t *data, const size_t len){
+    uint8_t first = data[0];
+    for (size_t i = 0; i < len-1; i++) {
+        data[i] = data[i+1];
+    }
+    data[len-1] = first;
+}
index 6f9a1177f47e7e881af867ae832c545da22c8a18..5674adcfdd07e26666b04560b242a1b03b8acf14 100644 (file)
@@ -17,6 +17,9 @@
 #include <time.h>
 #include "data.h"
 
+#ifndef ROTR
+# define ROTR(x,n) (((uintmax_t)(x) >> (n)) | ((uintmax_t)(x) << ((sizeof(x) * 8) - (n))))
+#endif
 #ifndef MIN
 # define MIN(a, b) (((a) < (b)) ? (a) : (b))
 #endif
@@ -68,3 +71,4 @@ void wiegand_add_parity(uint8_t *target, uint8_t *source, uint8_t length);
 
 void xor(unsigned char *dst, unsigned char *src, size_t len);
 int32_t le24toh(uint8_t data[3]);
+void rol(uint8_t *data, const size_t len);
Impressum, Datenschutz