summaryrefslogtreecommitdiffstats
path: root/scd/ccid-driver.c
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/ccid-driver.c
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/ccid-driver.c')
-rw-r--r--scd/ccid-driver.c28
1 files changed, 21 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;