1
0
Fork 0
mirror of git://git.gnupg.org/gnupg.git synced 2025-07-03 22:56:33 +02:00
gnupg/scd
NIIBE Yutaka f3d9b2582b scd: More changes on watching removal of card/reader.
* scd/app-common.h (struct app_ctx_s): Rename field to
periodical_check_needed.
* scd/scdaemon.c (update_usb): Rename from update_fdset_for_usb.
Don't use libusb_get_pollfds any more.
(scd_kick_the_loop): New.
(need_tick): Follow the rename.
(handle_connections): No libusb event handling here.
* scd/app.c (app_new_register): Follow the change of rename.
(select_application, scd_update_reader_status_file): Likewise.
* scd/ccid-driver.c (ccid_usb_thread_is_alive): New.
(intr_cb): Call scd_kick_the_loop.
(ccid_usb_thread): New.  Thread to invoke INTERRUPT callback.
(ccid_open_usb_reader): Add thread invocation.
(ccid_require_get_status): Remove
LIBUSB_WORKS_EXPECTED_FOR_INTERRUPT_ENDP.
(do_close_reader): Carefully handle handle->transfer.
(get_escaped_usb_string): Insert npth_unprotect/npth_protect.
(do_close_reader, bulk_out, bulk_in, abort_cmd, ccid_slot_status)
(ccid_transceive, ccid_transceive_secure): Likewise.

--

It found that libusb_get_pollfds is not supported on Windows.
Besides, it's a bit difficult to use for the select loop.
Thus, we use the thread named ccid_usb_thread, instead.

Signed-off-by: NIIBE Yutaka <gniibe@fsij.org>
2017-01-28 00:36:27 +09:00
..
apdu.c scd: Improve watching USB device removal. 2017-01-27 18:01:52 +09:00
apdu.h scd: Improve watching USB device removal. 2017-01-27 18:01:52 +09:00
app-common.h scd: More changes on watching removal of card/reader. 2017-01-28 00:36:27 +09:00
app-dinsig.c Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
app-geldkarte.c Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
app-help.c Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
app-nks.c Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
app-openpgp.c scd: Cleanup SERIALNO protocol. 2017-01-18 16:03:47 +09:00
app-p15.c Fix format string errors and some missing error case initialization. 2017-01-23 16:33:01 +01:00
app-sc-hsm.c Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
app.c scd: More changes on watching removal of card/reader. 2017-01-28 00:36:27 +09:00
atr.c Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
atr.h Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
ccid-driver.c scd: More changes on watching removal of card/reader. 2017-01-28 00:36:27 +09:00
ccid-driver.h scd: Improve watching USB device removal. 2017-01-27 18:01:52 +09:00
ChangeLog-2011 Generate the ChangeLog from commit logs. 2011-12-01 11:09:02 +01:00
command.c scd: Fix APP reference counting. 2017-01-26 19:32:51 +09:00
iso7816.c Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
iso7816.h Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
Makefile.am Change all http://www.gnu.org in license notices to https:// 2016-11-05 12:02:19 +01:00
scdaemon-w32info.rc w32: Add icons and version information. 2013-05-07 21:35:48 +02:00
scdaemon.c scd: More changes on watching removal of card/reader. 2017-01-28 00:36:27 +09:00
scdaemon.h scd: More changes on watching removal of card/reader. 2017-01-28 00:36:27 +09:00