scd: Don't limit to ST-2xxx for PC/SC.
authorNIIBE Yutaka <gniibe@fsij.org>
Thu, 17 Nov 2016 23:54:04 +0000 (08:54 +0900)
committerNIIBE Yutaka <gniibe@fsij.org>
Wed, 30 Nov 2016 00:32:18 +0000 (09:32 +0900)
* scd/apdu.c (pcsc_vendor_specific_init): Only check vender ID.

--
Backport of master commit: b6066ab18a67195817babaf9eccf896c2b3c7b0e

Some other products by Cherry works with pinpad, although it only works
for smaller keys (RSA 1024).  TPDU support is good for larger keys.

Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
scd/apdu.c

index 570e150..0beee25 100644 (file)
@@ -1855,8 +1855,12 @@ pcsc_vendor_specific_init (int slot)
       reader_table[slot].is_spr532 = 1;
       reader_table[slot].pinpad_varlen_supported = 1;
     }
-  else if (vendor == 0x046a && product == 0x003e) /* Cherry ST-2xxx */
+  else if (vendor == 0x046a)
     {
+      /* Cherry ST-2xxx (product == 0x003e) supports TPDU level
+       * exchange.  Other products which only support short APDU level
+       * exchange only work with shorter keys like RSA 1024.
+       */
       reader_table[slot].pcsc.pinmax = 15;
       reader_table[slot].pinpad_varlen_supported = 1;
     }