diff --git a/scd/apdu.c b/scd/apdu.c index 6824ded55..e920678d6 100644 --- a/scd/apdu.c +++ b/scd/apdu.c @@ -2056,7 +2056,7 @@ pcsc_pinpad_verify (int slot, int class, int ins, int p0, int p1, if (!pininfo->minlen) pininfo->minlen = 1; if (!pininfo->maxlen) - pininfo->maxlen = 25; + pininfo->maxlen = 15; /* Note that the 25 is the maximum value the SPR532 allows. */ if (pininfo->minlen < 1 || pininfo->minlen > 25 @@ -2139,7 +2139,7 @@ pcsc_pinpad_modify (int slot, int class, int ins, int p0, int p1, if (!pininfo->minlen) pininfo->minlen = 1; if (!pininfo->maxlen) - pininfo->maxlen = 25; + pininfo->maxlen = 15; /* Note that the 25 is the maximum value the SPR532 allows. */ if (pininfo->minlen < 1 || pininfo->minlen > 25 diff --git a/scd/ccid-driver.c b/scd/ccid-driver.c index da5fac954..8c9176762 100644 --- a/scd/ccid-driver.c +++ b/scd/ccid-driver.c @@ -3357,7 +3357,7 @@ ccid_transceive_secure (ccid_driver_t handle, if (!pininfo->minlen) pininfo->minlen = 1; if (!pininfo->maxlen) - pininfo->maxlen = 25; + pininfo->maxlen = 15; /* Note that the 25 is the maximum value the SPR532 allows. */ if (pininfo->minlen < 1 || pininfo->minlen > 25 @@ -3371,14 +3371,15 @@ ccid_transceive_secure (ccid_driver_t handle, { case VENDOR_SCM: /* Tested with SPR 532. */ case VENDOR_KAAN: /* Tested with KAAN Advanced (1.02). */ - case VENDOR_FSIJ: /* Tested with the gnuk code (2011-01-05). */ + case VENDOR_FSIJ: /* Tested with Gnuk (0.21). */ + pininfo->maxlen = 25; enable_varlen = 1; break; case VENDOR_VASCO: /* Tested with DIGIPASS 920 */ enable_varlen = 1; - pininfo->maxlen = 15; break; case VENDOR_CHERRY: + pininfo->maxlen = 25; enable_varlen = 1; /* The CHERRY XX44 keyboard echos an asterisk for each entered character on the keyboard channel. We use a special variant