]> cvs.zerfleddert.de Git - proxmark3-svn/commitdiff
fix em410x XL bug
authormarshmellow42 <marshmellowrf@gmail.com>
Tue, 28 Feb 2017 18:32:23 +0000 (13:32 -0500)
committermarshmellow42 <marshmellowrf@gmail.com>
Tue, 28 Feb 2017 18:32:23 +0000 (13:32 -0500)
and make it rule out more false positives.

common/lfdemod.c

index 125112088e09fc57b44768e0743bcb2b67a0c356..fee55c926ed87c412fbb9b4e95abf084eeeb11e3 100644 (file)
@@ -218,8 +218,8 @@ uint8_t Em410xDecode(uint8_t *BitStream, size_t *size, size_t *startIdx, uint32_
        uint8_t FmtLen = 10; // sets of 4 bits = end data 
        *startIdx = 0;
        errChk = preambleSearch(BitStream, preamble, sizeof(preamble), size, startIdx);
        uint8_t FmtLen = 10; // sets of 4 bits = end data 
        *startIdx = 0;
        errChk = preambleSearch(BitStream, preamble, sizeof(preamble), size, startIdx);
-       if (errChk == 0 || *size < 64) return 0;
-       if (*size == 110) FmtLen = 22; // 22 sets of 4 bits
+       if ( errChk == 0 || (*size != 64 && *size != 128) ) return 0;
+       if (*size == 128) FmtLen = 22; // 22 sets of 4 bits
 
        //skip last 4bit parity row for simplicity
        *size = removeParity(BitStream, *startIdx + sizeof(preamble), 5, 0, FmtLen * 5);
 
        //skip last 4bit parity row for simplicity
        *size = removeParity(BitStream, *startIdx + sizeof(preamble), 5, 0, FmtLen * 5);
Impressum, Datenschutz