summaryrefslogtreecommitdiffstats
path: root/scd
diff options
context:
space:
mode:
authorNIIBE Yutaka <gniibe@fsij.org>2019-10-15 02:40:01 +0200
committerNIIBE Yutaka <gniibe@fsij.org>2019-10-15 02:40:01 +0200
commitc933c15d587a1c0df3f4b3bf37d8d15164dd318f (patch)
treec45b688b88b1ad96ececd069ac812fa246f68cc1 /scd
parentdoc: Fix c+p bug in the examples for --import-filter. (diff)
downloadgnupg2-c933c15d587a1c0df3f4b3bf37d8d15164dd318f.tar.xz
gnupg2-c933c15d587a1c0df3f4b3bf37d8d15164dd318f.zip
scd,ccid: Add 08e6:34c2 (GEMPC_EZIO).
* scd/ccid-driver.c (ccid_transceive_secure): Add pinpad support for 08e6:34c2 which supports extended APDU exchange. Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
Diffstat (limited to 'scd')
-rw-r--r--scd/ccid-driver.c28
-rw-r--r--scd/ccid-driver.h1
2 files changed, 22 insertions, 7 deletions
diff --git a/scd/ccid-driver.c b/scd/ccid-driver.c
index d3e9ef024..fe7937d62 100644
--- a/scd/ccid-driver.c
+++ b/scd/ccid-driver.c
@@ -3435,15 +3435,29 @@ ccid_transceive_secure (ccid_driver_t handle,
cherry_mode = 1;
break;
case VENDOR_NXP:
- if (handle->id_product == CRYPTOUCAN){
- pininfo->maxlen = 25;
- enable_varlen = 1;
- }
+ if (handle->id_product == CRYPTOUCAN)
+ {
+ pininfo->maxlen = 25;
+ enable_varlen = 1;
+ }
+ break;
+ case VENDOR_GEMPC:
+ if (handle->id_product == GEMPC_PINPAD)
+ {
+ pininfo->maxlen = 25;
+ enable_varlen = 1;
+ break;
+ }
+ else if (handle->id_product == GEMPC_EZIO)
+ {
+ enable_varlen = 0;
+ pininfo->minlen = 4;
+ pininfo->maxlen = 8;
+ break;
+ }
break;
default:
- if ((handle->id_vendor == VENDOR_GEMPC &&
- handle->id_product == GEMPC_PINPAD)
- || (handle->id_vendor == VENDOR_VEGA &&
+ if ((handle->id_vendor == VENDOR_VEGA &&
handle->id_product == VEGA_ALPHA))
{
enable_varlen = 0;
diff --git a/scd/ccid-driver.h b/scd/ccid-driver.h
index 8e7ff4482..e1ef98202 100644
--- a/scd/ccid-driver.h
+++ b/scd/ccid-driver.h
@@ -83,6 +83,7 @@ enum {
#define VASCO_920 0x0920
#define GEMPC_PINPAD 0x3478
#define GEMPC_CT30 0x3437
+#define GEMPC_EZIO 0x34c2 /* (!=34c0) Also known as IDBridge CT710 */
#define VEGA_ALPHA 0x0008
#define CYBERJACK_GO 0x0504
#define CRYPTOUCAN 0x81e6