Hi,
There is a bug in the CCID driver of Vista x64 SP2 (driver ver 6.0.6002.18005). The issue is in the handling of CCID commands with wait time extension.
If a command with a wait time above 5 seconds is sent to the smartcard reader, the driver is supposed to wait till timeout; only then it should send next command. But Vista x64 SP2 driver retries the command every 5 seconds (USB timeout). Since the smartcard reader is reading data from the card, this results in the command failure. I have tested with different smartcard readers and all readers have failed the test.
This issue is NOT seen with other MS CCID drivers (XP, Vista SP1, Win7 etc.). These drivers send the command, and wait till they receive the response or till the “Wait Time” is over.
The main problem happens when we try to run IFDTEST2 with MS CCID driver of Vista x64 SP2. The card named “Infineon Technologies PC/SC Compliance Test Card” fails the test during a command to read 30 bytes with a wait time of 30.
Due to this bug, it is not possible to pass DTM Test using MS CCID driver in Vista x64 SP2.
The error sequence is as follows:
driver smartcard reader
command (with large wait time) ---------> (starts command execution)
command (retries command after 5 sec) --------->
command (retries command every 5 sec) --------->
…
…
correct sequence is as follows:
driver smartcard reader
command (with large wait time) ---------> (starts command execution)
<--------- Response (reader responds within the wait time)
As far as I know, if a smart card reader is not certified with vista, it can’t get Windows 7 certification neither. That means, due to this bug, NO smart card reader can be Win 7 certified with MS CCID driver.
Please, can anyone provide a hotfix for this issue?