diff options
author | NIIBE Yutaka <[email protected]> | 2020-09-29 04:27:19 +0000 |
---|---|---|
committer | NIIBE Yutaka <[email protected]> | 2020-09-29 04:27:19 +0000 |
commit | 1444203ca32ccfa4bd5097d2d49565c4055c620b (patch) | |
tree | 3606ab6387c1734af69ea7bce37cc16ec7cca80f /scd/ccid-driver.c | |
parent | scd: Internal CCID driver: Call libusb_clear_halt at ccid_setup_intr. (diff) | |
download | gnupg-1444203ca32ccfa4bd5097d2d49565c4055c620b.tar.gz gnupg-1444203ca32ccfa4bd5097d2d49565c4055c620b.zip |
scd: Internal CCID driver fix.
* scd/ccid-driver.c (intr_cb): More useful debug output.
(ccid_slot_status): Remove redundant condition.
Signed-off-by: NIIBE Yutaka <[email protected]>
Diffstat (limited to 'scd/ccid-driver.c')
-rw-r--r-- | scd/ccid-driver.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/scd/ccid-driver.c b/scd/ccid-driver.c index 1048c7840..8315d7f81 100644 --- a/scd/ccid-driver.c +++ b/scd/ccid-driver.c @@ -1484,7 +1484,8 @@ intr_cb (struct libusb_transfer *transfer) { ccid_driver_t handle = transfer->user_data; - DEBUGOUT_1 ("CCID: interrupt callback %d\n", transfer->status); + DEBUGOUT_2 ("CCID: interrupt callback %d (%d)\n", + transfer->status, transfer->actual_length); if (transfer->status == LIBUSB_TRANSFER_TIMED_OUT) { @@ -1511,6 +1512,8 @@ intr_cb (struct libusb_transfer *transfer) if (len < 2) break; + DEBUGOUT_1 ("CCID: NotifySlotChange: %02x\n", p[1]); + if ((p[1] & 1)) card_removed = 0; else @@ -2410,7 +2413,7 @@ ccid_slot_status (ccid_driver_t handle, int *statusbits, int on_wire) { /* Setup interrupt transfer at the initial call of slot_status with ON_WIRE == 0 */ - if (handle->transfer == NULL && handle->ep_intr >= 0) + if (handle->transfer == NULL) { ccid_setup_intr (handle); if (handle->id_vendor == VENDOR_SCM) |