From 68bf87e0c56c26d6ed89519a4c1bda4892927a85 Mon Sep 17 00:00:00 2001 From: iceman1001 Date: Tue, 28 Apr 2015 20:59:20 +0200 Subject: [PATCH 1/1] CHG: added some sanity checks for the Ultralight-EV1 annotations, to make less false positives in the tracelog --- client/cmdhf.c | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/client/cmdhf.c b/client/cmdhf.c index 65cc1c18..5e29d528 100644 --- a/client/cmdhf.c +++ b/client/cmdhf.c @@ -89,10 +89,26 @@ void annotateIso14443a(char *exp, size_t size, uint8_t* cmd, uint8_t cmdsize) case MIFARE_ULC_AUTH_2 : snprintf(exp,size,"AUTH_ANSW"); break; case MIFARE_ULEV1_AUTH : snprintf(exp,size,"PWD-AUTH"); break; - case MIFARE_ULEV1_FASTREAD : snprintf(exp,size,"READ RANGE (%d-%d)",cmd[1],cmd[2]); break; - case MIFARE_ULEV1_WRITE : snprintf(exp,size,"WRITEBLOCK(%d)",cmd[1]); break; - case MIFARE_ULEV1_READ_CNT : snprintf(exp,size,"READ CNT(%d)",cmd[1]); break; - case MIFARE_ULEV1_INCR_CNT : snprintf(exp,size,"INC(%d)",cmd[1]); break; + case MIFARE_ULEV1_FASTREAD : { + if ( cmd[2] < 0x21) + snprintf(exp,size,"READ RANGE (%d-%d)",cmd[1],cmd[2]); + break; + } + case MIFARE_ULEV1_WRITE : { + if ( cmd[1] < 0x21 ) + snprintf(exp,size,"WRITEBLOCK(%d)",cmd[1]); + break; + } + case MIFARE_ULEV1_READ_CNT :{ + if ( cmd[1] < 5 ) + snprintf(exp,size,"READ CNT(%d)",cmd[1]); + break; + } + case MIFARE_ULEV1_INCR_CNT : { + if ( cmd[1] < 5 ) + snprintf(exp,size,"INC(%d)",cmd[1]); + break; + } case MIFARE_ULEV1_READSIG : snprintf(exp,size,"READ_SIG"); break; case MIFARE_ULEV1_CHECKTEAR : snprintf(exp,size,"CHK_TEARING(%d)",cmd[1]); break; case MIFARE_ULEV1_VCSL : snprintf(exp,size,"VCSL"); break; -- 2.39.5