Add length check to have compatible with R502
improve the code, to have compatible with OEM R502 firmware.
This commit is contained in:
parent
b02f94d7da
commit
435e2ffc81
1 changed files with 8 additions and 2 deletions
|
@ -143,8 +143,14 @@ static int pcsc_transmit(struct nfc_device *pnd, const uint8_t *tx, const size_t
|
|||
DWORD dw_rx_len = *rx_len;
|
||||
//in libfreefare, tx_len = 1, and it leads to 0x80100008 error, with PC/SC reader, the input tx_len at least two bytes for the SW value
|
||||
//so if found the reader is Feitian reader, we set to 2
|
||||
if (dw_rx_len == 1 && is_pcsc_reader_vendor_feitian(pnd)) {
|
||||
if (is_pcsc_reader_vendor_feitian(pnd))
|
||||
{
|
||||
if (dw_rx_len == 1)
|
||||
{
|
||||
dw_rx_len = 2;
|
||||
} else {
|
||||
dw_rx_len += 2;//in libfreefare, some data length send not include sw1 and sw2, so add it.
|
||||
}
|
||||
}
|
||||
|
||||
LOG_HEX(NFC_LOG_GROUP_COM, "TX", tx, tx_len);
|
||||
|
|
Loading…
Reference in a new issue