- 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 ( cmdsize >=3 && cmd[2] <= 0xE6)
+ snprintf(exp,size,"READ RANGE (%d-%d)",cmd[1],cmd[2]);
+ else
+ snprintf(exp,size,"?");
+ break;
+ }
+ case MIFARE_ULC_WRITE : {
+ if ( cmd[1] < 0x21 )
+ snprintf(exp,size,"WRITEBLOCK(%d)",cmd[1]);
+ else
+ snprintf(exp,size,"?");
+ break;
+ }
+ case MIFARE_ULEV1_READ_CNT :{
+ if ( cmd[1] < 5 )
+ snprintf(exp,size,"READ CNT(%d)",cmd[1]);
+ else
+ snprintf(exp,size,"?");
+ break;
+ }
+ case MIFARE_ULEV1_INCR_CNT : {
+ if ( cmd[1] < 5 )
+ snprintf(exp,size,"INCR(%d)",cmd[1]);
+ else
+ snprintf(exp,size,"?");
+ break;
+ }