[Pcsclite-cvs-commit] r2223 - trunk/Drivers/ccid/src

Ludovic Rousseau rousseau at alioth.debian.org
Fri Nov 17 21:19:17 CET 2006


Author: rousseau
Date: 2006-11-17 21:19:17 +0100 (Fri, 17 Nov 2006)
New Revision: 2223

Modified:
   trunk/Drivers/ccid/src/ifdhandler.c
Log:
set IFSC in the SetParameters argument for T=1 if TAi (i>2) is present: IFSC

Thanks to Stefan Neis for the bug report and patch


Modified: trunk/Drivers/ccid/src/ifdhandler.c
===================================================================
--- trunk/Drivers/ccid/src/ifdhandler.c	2006-11-17 16:39:49 UTC (rev 2222)
+++ trunk/Drivers/ccid/src/ifdhandler.c	2006-11-17 20:19:17 UTC (rev 2223)
@@ -694,6 +694,18 @@
 			(param[3] & 0xF0) >> 4 /* BWI */, param[3] & 0x0F /* CWI */,
 			ccid_desc->dwDefaultClock);
 
+		/* TAi (i>2) present? IFSC */
+		for (i=2; i<ATR_MAX_PROTOCOLS; i++)
+			if (atr.ib[i][ATR_INTERFACE_BYTE_TA].present)
+			{
+				DEBUG_COMM3("IFSC (TA%d) present: %d", i+1,
+					atr.ib[i][ATR_INTERFACE_BYTE_TA].value);
+				 param[5] = atr.ib[i][ATR_INTERFACE_BYTE_TA].value;
+
+				/* only the first TAi (i>2) must be used */
+				break;
+			}
+
 		DEBUG_COMM2("Timeout: %d seconds", ccid_desc->readTimeout);
 
 		ret = SetParameters(reader_index, 1, sizeof(param), param);




More information about the Pcsclite-cvs-commit mailing list