diff --git a/client/src/cmdsmartcard.c b/client/src/cmdsmartcard.c index f03617d3a..9fe192e6b 100644 --- a/client/src/cmdsmartcard.c +++ b/client/src/cmdsmartcard.c @@ -499,7 +499,7 @@ static int CmdSmartRaw(const char *Cmd) { data[4] = buf[1]; clearCommandBuffer(); - SendCommandOLD(CMD_SMART_RAW, 0, hexlen, 0, data, hexlen); + SendCommandMIX(CMD_SMART_RAW, 0, hexlen, 0, data, hexlen); len = smart_response(buf); data[4] = 0; @@ -507,6 +507,15 @@ static int CmdSmartRaw(const char *Cmd) { if (decodeTLV && len > 4) TLVPrintFromBuffer(buf, len - 2); + else { + if (len > 16) { + for (int i=0; i