mirror of
https://github.com/RfidResearchGroup/proxmark3.git
synced 2024-09-22 16:26:14 +08:00
Merge pull request #1332 from merlokk/hf_se_fix
fix error show in the `hf search`
This commit is contained in:
commit
f56fcdc70d
|
@ -91,10 +91,12 @@ int CmdHFSearch(const char *Cmd) {
|
||||||
PROMPT_CLEARLINE;
|
PROMPT_CLEARLINE;
|
||||||
PrintAndLogEx(INPLACE, " Searching for ISO14443-A tag...");
|
PrintAndLogEx(INPLACE, " Searching for ISO14443-A tag...");
|
||||||
if (IfPm3Iso14443a()) {
|
if (IfPm3Iso14443a()) {
|
||||||
if (infoHF14A(false, false, false) > 0) {
|
int sel_state = infoHF14A(false, false, false);
|
||||||
|
if (sel_state > 0) {
|
||||||
PrintAndLogEx(SUCCESS, "\nValid " _GREEN_("ISO 14443-A tag") " found\n");
|
PrintAndLogEx(SUCCESS, "\nValid " _GREEN_("ISO 14443-A tag") " found\n");
|
||||||
res = PM3_SUCCESS;
|
res = PM3_SUCCESS;
|
||||||
|
|
||||||
|
if (sel_state == 1)
|
||||||
infoHF14A4Applications(verbose);
|
infoHF14A4Applications(verbose);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1807,6 +1807,8 @@ int infoHF14A(bool verbose, bool do_nack_test, bool do_aid_search) {
|
||||||
|
|
||||||
memcpy(card.ats, resp.data.asBytes, resp.oldarg[0]);
|
memcpy(card.ats, resp.data.asBytes, resp.oldarg[0]);
|
||||||
card.ats_len = resp.oldarg[0]; // note: ats_len includes CRC Bytes
|
card.ats_len = resp.oldarg[0]; // note: ats_len includes CRC Bytes
|
||||||
|
if (card.ats_len > 3)
|
||||||
|
select_status = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (card.ats_len >= 3) { // a valid ATS consists of at least the length byte (TL) and 2 CRC bytes
|
if (card.ats_len >= 3) { // a valid ATS consists of at least the length byte (TL) and 2 CRC bytes
|
||||||
|
@ -2097,6 +2099,8 @@ int infoHF14A(bool verbose, bool do_nack_test, bool do_aid_search) {
|
||||||
if ((card.sak & 0x20) == 0x20) {
|
if ((card.sak & 0x20) == 0x20) {
|
||||||
PrintAndLogEx(INFO, "--> SAK incorrectly claims that card supports RATS <--");
|
PrintAndLogEx(INFO, "--> SAK incorrectly claims that card supports RATS <--");
|
||||||
}
|
}
|
||||||
|
if (select_status == 1)
|
||||||
|
select_status = 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
int isMagic = 0;
|
int isMagic = 0;
|
||||||
|
@ -2169,7 +2173,7 @@ int infoHF14A4Applications(bool verbose) {
|
||||||
int res = Iso7816Select(CC_CONTACTLESS, ActivateField, true, (uint8_t *)hintAIDList[i].aid, hintAIDList[i].aid_length, result, sizeof(result), &resultlen, &sw);
|
int res = Iso7816Select(CC_CONTACTLESS, ActivateField, true, (uint8_t *)hintAIDList[i].aid, hintAIDList[i].aid_length, result, sizeof(result), &resultlen, &sw);
|
||||||
ActivateField = false;
|
ActivateField = false;
|
||||||
if (res)
|
if (res)
|
||||||
continue;
|
break;
|
||||||
|
|
||||||
if (sw == 0x9000 || sw == 0x6283 || sw == 0x6285) {
|
if (sw == 0x9000 || sw == 0x6283 || sw == 0x6285) {
|
||||||
if (!found) {
|
if (!found) {
|
||||||
|
|
Loading…
Reference in a new issue