]> cvs.zerfleddert.de Git - proxmark3-svn/blobdiff - client/nonce2key/nonce2key.c
CHG: added the ping command to the header file.
[proxmark3-svn] / client / nonce2key / nonce2key.c
index 853329002c3352d85af1f2a06e2c9aa2ca12463b..3d3d1e374976cc2cd159633a8bf43a8534ca4900 100644 (file)
@@ -97,7 +97,6 @@ int nonce2key_ex(uint8_t blockno, uint8_t keytype, uint32_t uid, uint32_t nt, ui
        state = lfsr_common_prefix_ex(nr, ks3x);
 
        if (!state) {
        state = lfsr_common_prefix_ex(nr, ks3x);
 
        if (!state) {
-               key_count = 0;
                PrintAndLog("Failed getting states");
                return 1;
        }
                PrintAndLog("Failed getting states");
                return 1;
        }
@@ -117,7 +116,6 @@ int nonce2key_ex(uint8_t blockno, uint8_t keytype, uint32_t uid, uint32_t nt, ui
        
        // first call to this function.  clear all other stuff and set new found states.
        if (last_keylist == NULL) {
        
        // first call to this function.  clear all other stuff and set new found states.
        if (last_keylist == NULL) {
-               key_count = 0;
                free(last_keylist);
                last_keylist = state_s;
                PrintAndLog("parity is all zero, testing special attack. First call, this attack needs at least two calls. Hold on...");                
                free(last_keylist);
                last_keylist = state_s;
                PrintAndLog("parity is all zero, testing special attack. First call, this attack needs at least two calls. Hold on...");                
@@ -147,6 +145,7 @@ int nonce2key_ex(uint8_t blockno, uint8_t keytype, uint32_t uid, uint32_t nt, ui
        printf("key_count: %d\n", key_count);
        if ( key_count == 0 ){
                free(state);
        printf("key_count: %d\n", key_count);
        if ( key_count == 0 ){
                free(state);
+               state = NULL;
                return 0;
        }
        
                return 0;
        }
        
@@ -169,6 +168,7 @@ out:
        free(last_keylist);
        last_keylist = NULL;
        free(state);
        free(last_keylist);
        last_keylist = NULL;
        free(state);
+       state = NULL;
        return retval;
 }
 
        return retval;
 }
 
Impressum, Datenschutz