J have smartcard reader cyberJack® RFID komfort (USB) .
On The host machine reader this reader is detected as pinpad reader so that pins can be entered on its keyboard.
On virtual machine "Parallels Proxy CCID reader" does report pinpad function, I have to enter the pins in the application, which is less secure.
This is because the following code:
Code:
typedef struct{
uint8_t tag;
uint8_t length;
uint32_t value;
} PCSC_TLV_STRUCTURE;
DWORD feature_len;
uint8_t feature_buf[256];
#define IOCTL_GET_FEATURE_REQUEST SCARD_CTL_CODE(3400)
SCardControl(priv->hCard, IOCTL_GET_FEATURE_REQUEST, NULL, 0, feature_buf, sizeof(feature_buf), &feature_len);
feature_len /= sizeof(PCSC_TLV_STRUCTURE);
PCSC_TLV_STRUCTURE * pcsc_tlv = (PCSC_TLV_STRUCTURE*)feature_buf;
for(DWORD i = 0; i < feature_len; ++i)
std:
ut << "Found future: " << pcsc_tlv.tag
[/CODE]
does not return features:
FEATURE_EXECUTE_PACE (0x20),
FEATURE_VERIFY_PIN_DIRECT (0x6) ,
FEATURE_MODIFY_PIN_DIRECT (0x7)
FEATURE_IFD_PIN_PROPERTIES (0xA)
Please redirect the reader capabilities from the host to the virtual machine.