OMNIKEY 3x21 and 6121 Smart Card Reader are not pinpad readers
macOS 10.13 ships with ccid driver 1.4.27 (fixed in 1.4.29) and this version identifies these readers wrongly as pinpad readers. Signed-off-by: Raul Metsma <raul@metsma.ee>
This commit is contained in:
parent
4de0d06a93
commit
dfe932d00d
@ -1063,6 +1063,7 @@ static void detect_reader_features(sc_reader_t *reader, SCARDHANDLE card_handle)
|
||||
PCSC_TLV_STRUCTURE *pcsc_tlv;
|
||||
LONG rv;
|
||||
const char *log_disabled = "but it's disabled in configuration file";
|
||||
int id_vendor = 0, id_product = 0;
|
||||
|
||||
LOG_FUNC_CALLED(ctx);
|
||||
|
||||
@ -1132,6 +1133,17 @@ static void detect_reader_features(sc_reader_t *reader, SCARDHANDLE card_handle)
|
||||
}
|
||||
}
|
||||
|
||||
/* Some readers claim to have PinPAD support even if they have not */
|
||||
if ((reader->capabilities & SC_READER_CAP_PIN_PAD) &&
|
||||
part10_get_vendor_product(reader, card_handle, &id_vendor, &id_product) == SC_SUCCESS) {
|
||||
/* HID Global OMNIKEY 3x21/6121 Smart Card Reader, fixed in libccid 1.4.29 (remove when last supported OS is using 1.4.29) */
|
||||
if ((id_vendor == 0x076B && id_product == 0x3031) ||
|
||||
(id_vendor == 0x076B && id_product == 0x6632)) {
|
||||
sc_log(ctx, "%s is not pinpad reader, ignoring", reader->name);
|
||||
reader->capabilities &= ~SC_READER_CAP_PIN_PAD;
|
||||
}
|
||||
}
|
||||
|
||||
/* Detect display */
|
||||
if (priv->pin_properties_ioctl) {
|
||||
rcount = sizeof(rbuf);
|
||||
|
Loading…
Reference in New Issue
Block a user