[Pcsclite-cvs-commit] r4550 - in /trunk/Drivers/ccid/src: ccid.c ccid.h commands.c

rousseau at users.alioth.debian.org rousseau at users.alioth.debian.org
Tue Nov 17 08:50:47 UTC 2009


Author: rousseau
Date: Tue Nov 17 08:50:46 2009
New Revision: 4550

URL: http://svn.debian.org/wsvn/pcsclite/?sc=1&rev=4550
Log:
The Covadis Véga-Alpha reader is a GemPC pinpad inside. So we use the
same code to:
- load the strings for the display
- avoid limitation of the reader

Thanks to Loïs Lherbier for the patch

Modified:
    trunk/Drivers/ccid/src/ccid.c
    trunk/Drivers/ccid/src/ccid.h
    trunk/Drivers/ccid/src/commands.c

Modified: trunk/Drivers/ccid/src/ccid.c
URL: http://svn.debian.org/wsvn/pcsclite/trunk/Drivers/ccid/src/ccid.c?rev=4550&op=diff
==============================================================================
--- trunk/Drivers/ccid/src/ccid.c (original)
+++ trunk/Drivers/ccid/src/ccid.c Tue Nov 17 08:50:46 2009
@@ -139,6 +139,7 @@
 			}
 			break;
 
+		case VEGAALPHA:
 		case GEMPCPINPAD:
 			/* load the l10n strings in the pinpad memory */
 			{

Modified: trunk/Drivers/ccid/src/ccid.h
URL: http://svn.debian.org/wsvn/pcsclite/trunk/Drivers/ccid/src/ccid.h?rev=4550&op=diff
==============================================================================
--- trunk/Drivers/ccid/src/ccid.h (original)
+++ trunk/Drivers/ccid/src/ccid.h Tue Nov 17 08:50:46 2009
@@ -181,6 +181,7 @@
 #define DELLSCRK    0x413C2101
 #define DELLSK      0x413C2100
 #define KOBIL_TRIBANK	0x0D463010
+#define VEGAALPHA   0x09820008
 
 #define VENDOR_GEMALTO 0x08E6
 #define GET_VENDOR(readerID) ((readerID >> 16) & 0xFFFF)

Modified: trunk/Drivers/ccid/src/commands.c
URL: http://svn.debian.org/wsvn/pcsclite/trunk/Drivers/ccid/src/commands.c?rev=4550&op=diff
==============================================================================
--- trunk/Drivers/ccid/src/commands.c (original)
+++ trunk/Drivers/ccid/src/commands.c Tue Nov 17 08:50:46 2009
@@ -323,7 +323,8 @@
 
 #ifdef BOGUS_PINPAD_FIRMWARE
 	/* bug circumvention for the GemPC Pinpad */
-	if (GEMPCPINPAD == ccid_descriptor->readerID)
+	if ((GEMPCPINPAD == ccid_descriptor->readerID)
+		|| (VEGAALPHA == ccid_descriptor->readerID))
 	{
 		/* the firmware reject the cases: 00h No string and FFh default
 		 * CCID message. The only value supported is 01h (display 1 message) */
@@ -569,7 +570,8 @@
 	}
 
 	/* bug circumvention for the GemPC Pinpad */
-	if (GEMPCPINPAD == ccid_descriptor->readerID)
+	if ((GEMPCPINPAD == ccid_descriptor->readerID)
+		|| (VEGAALPHA == ccid_descriptor->readerID))
 	{
 		/* The reader does not support, and actively reject, "max size reached"
 		 * and "timeout occured" validation conditions */
@@ -662,7 +664,8 @@
 		cmd[21] = 0x00; /* set bNumberMessages to 0 */
 	}
 
-	if (GEMPCPINPAD == ccid_descriptor->readerID)
+	if ((GEMPCPINPAD == ccid_descriptor->readerID)
+		|| (VEGAALPHA == ccid_descriptor->readerID))
 		cmd[21] = bNumberMessages;	/* restore the real value */
 #endif
 




More information about the Pcsclite-cvs-commit mailing list