X-Git-Url: http://cvs.zerfleddert.de/cgi-bin/gitweb.cgi/proxmark3-svn/blobdiff_plain/9332b857ffeee343334064d3ca53048f59c55e50..7d5169a0e97575732aa971121193a9eb4f8fae57:/client/cmdhf14a.c

diff --git a/client/cmdhf14a.c b/client/cmdhf14a.c
index 8d15f731..a0260004 100644
--- a/client/cmdhf14a.c
+++ b/client/cmdhf14a.c
@@ -27,8 +27,6 @@
 #include "nonce2key/nonce2key.h"
 #include "cmdhf.h"
 
-#define llx PRIx64
-
 static int CmdHelp(const char *Cmd);
 static void waitCmd(uint8_t iLen);
 
@@ -731,9 +729,11 @@ int CmdHF14ACmdRaw(const char *cmd) {
 
 	if(topazmode)
 		c.arg[0] |= ISO14A_TOPAZMODE;
-		
+			
 	// Max buffer is USB_CMD_DATA_SIZE
-    c.arg[1] = (datalen & 0xFFFF) | (numbits << 16);
+	datalen = (datalen > USB_CMD_DATA_SIZE) ? USB_CMD_DATA_SIZE : datalen;
+		
+    c.arg[1] = (datalen & 0xFFFF) | (uint32_t)(numbits << 16);
     memcpy(c.d.asBytes,data,datalen);
 
 	clearCommandBuffer();
@@ -788,7 +788,8 @@ static command_t CommandTable[] =
 
 int CmdHF14A(const char *Cmd) {
 	// flush
-	WaitForResponseTimeout(CMD_ACK,NULL,100);
+	clearCommandBuffer();
+	//WaitForResponseTimeout(CMD_ACK,NULL,100);
 
 	// parse
 	CmdsParse(CommandTable, Cmd);