]> cvs.zerfleddert.de Git - proxmark3-svn/commitdiff
bugfixes hf epa cnonces
authorpwpiwi <pwpiwi@users.noreply.github.com>
Thu, 18 Dec 2014 18:40:35 +0000 (19:40 +0100)
committerpwpiwi <pwpiwi@users.noreply.github.com>
Thu, 18 Dec 2014 18:40:35 +0000 (19:40 +0100)
- extended length (more than 1 byte) not handled correctly
- nonces not printed on Windows due to type mismatch

armsrc/epa.c
client/cmdhfepa.c

index 497bd9de618584d233929951d2bddea171bc05f7..fb19656d1dd1d345a8c72f016415691a47e8c9a3 100644 (file)
@@ -108,9 +108,9 @@ size_t EPA_Parse_CardAccess(uint8_t *data,
                if (data[index] == 0x31 || data[index] == 0x30) {
                        // enter the set (skip tag + length)
                        index += 2;
-                       // extended length
+                       // check for extended length
                        if ((data[index - 1] & 0x80) != 0) {
-                               index += (data[index] & 0x7F);
+                               index += (data[index-1] & 0x7F);
                        }
                }
                // OID
index 8a36d6aef8bb50d78b3ef0c8b3b3582a5439e033..8f6a6af2d7b2a3c114bff2426faa7e040374ed18 100644 (file)
@@ -54,10 +54,10 @@ int CmdHFEPACollectPACENonces(const char *Cmd)
                        size_t nonce_length = resp.arg[1];
                        char *nonce = (char *) malloc(2 * nonce_length + 1);
                        for(int j = 0; j < nonce_length; j++) {
-                               snprintf(nonce + (2 * j), 3, "%02X", resp.d.asBytes[j]);
+                               sprintf(nonce + (2 * j), "%02X", resp.d.asBytes[j]);
                        }
                        // print nonce
-                       PrintAndLog("Length: %d, Nonce: %s",resp.arg[1], nonce);
+                       PrintAndLog("Length: %d, Nonce: %s", nonce_length, nonce);
                }
                if (i < n - 1) {
                        sleep(d);
Impressum, Datenschutz