]> git.zerfleddert.de Git - proxmark3-svn/commitdiff
Update cmddata.c 53/head
authorIceman <iceman@iuse.se>
Fri, 30 Jan 2015 14:17:07 +0000 (15:17 +0100)
committerIceman <iceman@iuse.se>
Fri, 30 Jan 2015 14:17:07 +0000 (15:17 +0100)
as suggested,  a bitwise bounds check in cmddata.

client/cmddata.c

index cf4dc6b9b251c992a6ab84d29712fe334076d313..25d752f6a47eacf28a7ca827011a2e6aee31de26 100644 (file)
@@ -57,9 +57,8 @@ void printDemodBuff()
        }
        if (bitLen>512) bitLen=512; //max output to 512 bits if we have more - should be plenty
                
        }
        if (bitLen>512) bitLen=512; //max output to 512 bits if we have more - should be plenty
                
-       // equally divided by 16
-       if ( bitLen % 16 > 0)
-               bitLen = (bitLen/16);
+       // ensure equally divided by 16
+       bitLen &= 0xfff0;
        
        for (i = 0; i <= (bitLen-16); i+=16) {
                PrintAndLog("%i%i%i%i%i%i%i%i%i%i%i%i%i%i%i%i",
        
        for (i = 0; i <= (bitLen-16); i+=16) {
                PrintAndLog("%i%i%i%i%i%i%i%i%i%i%i%i%i%i%i%i",
@@ -193,6 +192,11 @@ void printBitStream(uint8_t BitStream[], uint32_t bitLen)
     return;
   }
   if (bitLen>512) bitLen=512;
     return;
   }
   if (bitLen>512) bitLen=512;
+  
+       // ensure equally divided by 16
+       bitLen &= 0xfff0;
+
+
    for (i = 0; i <= (bitLen-16); i+=16) {
     PrintAndLog("%i%i%i%i%i%i%i%i%i%i%i%i%i%i%i%i",
       BitStream[i],
    for (i = 0; i <= (bitLen-16); i+=16) {
     PrintAndLog("%i%i%i%i%i%i%i%i%i%i%i%i%i%i%i%i",
       BitStream[i],
Impressum, Datenschutz