Hello,
my (actually fully supported) Cryptoflex 32K v4 card is not detected
because of a bug with ATR masking:
card.c:188:sc_connect_card: trying driver: flex
card.c:746:match_atr_table: ATR : 3b:95:18:40:ff:64:02:01:01:02
card.c:754:match_atr_table: ATR try : 3b:95:15:40:20:68:01:02:00:00
card.c:754:match_atr_table: ATR try : 3B:95:15:40:FF:68:01:02:02:01
card.c:754:match_atr_table: ATR try : 3B:95:15:40:FF:68:01:02:02:04
card.c:754:match_atr_table: ATR try : 3B:85:40:20:68:01:01:05:01
card.c:754:match_atr_table: ATR try : 3B:95:94:40:FF:63:01:01:02:01
card.c:754:match_atr_table: ATR try : 3B:95:15:40:FF:63:01:01:02:01
card.c:763:match_atr_table: ATR mask: FF:FF:FF:FF:FF:FF:FF:FF:00:00
card.c:754:match_atr_table: ATR try :
3B:95:18:40:FF:64:02:01:01:02 <---
card.c:763:match_atr_table: ATR mask: FF:FF:FF:FF:FF:FF:FF:FF:00:00
card.c:754:match_atr_table: ATR try : 3B:95:18:40:FF:62:01:01:00:00
....
The respective ATR bits have to be set to 0 (or card.c around line 776
would have to be modified).
Please find below a patch which detects those Cryptoflex cards again.
Best regards,
Heiko
--- trunk/src/libopensc/card-flex.c 2007-01-07 19:00:58.000000000 +0100
+++ trunk1/src/libopensc/card-flex.c 2007-01-07 18:47:55.000000000 +0100
@@ -40,14 +40,14 @@
/* "16K+SS1" alias Cryptoflex 16 card with Standard Softmask V1 */
/* (taken from Cryptoflex Card Programmers Guide 4.5 Page xviii) */
/* last two bytes can be ignored - version of the softmask */
- { "3B:95:15:40:FF:63:01:01:02:01", "FF:FF:FF:FF:FF:FF:FF:FF:00:00",
+ { "3B:95:15:40:FF:63:01:01:00:00", "FF:FF:FF:FF:FF:FF:FF:FF:00:00",
"Cryptoflex 16K", SC_CARD_TYPE_FLEX_CRYPTO,
SC_CARD_FLAG_ONBOARD_KEY_GEN, NULL },
/* 32K v4 */
/* "32K+SS1" alias Cryptoflex 32 card with Standard Softmask V1 */
/* (taken from Cryptoflex Card Programmers Guide 4.5 Page xviii) */
/* last two bytes can be ignored - version of the softmask */
- { "3B:95:18:40:FF:64:02:01:01:02","FF:FF:FF:FF:FF:FF:FF:FF:00:00",
+ { "3B:95:18:40:FF:64:02:01:00:00","FF:FF:FF:FF:FF:FF:FF:FF:00:00",
"Cryptoflex 32K v4", SC_CARD_TYPE_FLEX_CRYPTO,
SC_CARD_FLAG_ONBOARD_KEY_GEN, NULL },
/* "32K+e-gate" alias Cryptoflex e-gate 32K card */
_______________________________________________
opensc-devel mailing list
opensc-devel@lists.opensc-project.org
http://www.opensc-project.org/mailman/listinfo/opensc-devel