From b1e8072320c19246962beb6d67dc5784b5a72364 Mon Sep 17 00:00:00 2001 From: NIIBE Yutaka Date: Mon, 28 Sep 2020 15:52:42 +0900 Subject: scd: Internal CCID: Handle LIBUSB_ERROR_TIMEOUT at ccid_get_atr. * scd/ccid-driver.c (ccid_slot_status): Handle LIBUSB_ERROR_TIMEOUT. -- With SPR532, at the first connection, it fails by LIBUSB_ERROR_TIMEOUT, but no retry. Signed-off-by: NIIBE Yutaka --- scd/ccid-driver.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/scd/ccid-driver.c b/scd/ccid-driver.c index 888d70367..2227eed89 100644 --- a/scd/ccid-driver.c +++ b/scd/ccid-driver.c @@ -2443,7 +2443,8 @@ ccid_slot_status (ccid_driver_t handle, int *statusbits, int on_wire) status and debugging enabled. */ rc = bulk_in (handle, msg, sizeof msg, &msglen, RDR_to_PC_SlotStatus, seqno, retries? 1000 : 200, 1); - if (rc == CCID_DRIVER_ERR_CARD_IO_ERROR && retries < 3) + if ((rc == CCID_DRIVER_ERR_CARD_IO_ERROR || rc == CCID_DRIVER_ERR_USB_TIMEOUT) + && retries < 3) { if (!retries) { -- cgit v1.2.3