1,1217d0 < 2011-02-22 Ludovic Rousseau < < * [r5626] README, configure.in: release 1.4.2 < * [r5625] readers/supported_readers.txt: Add Xiring MyLeo < * [r5622] readers/Aktiv_Rutoken_Lite.txt, < readers/supported_readers.txt: Add Aktiv Rutoken lite < < 2011-02-20 Ludovic Rousseau < < * [r5620] bootstrap: Use /bin/sh instead of bash < < bash is installed in /usr/local on FreeBSD < < 2011-02-16 Ludovic Rousseau < < * [r5615] readers/Broadcom_5880v4.txt: Add another Broadcom 5880 < with PID = 0x5802 This one is a dual interface < contact/contactless < * [r5614] readers/GemProxDU.txt, readers/GemProxDU_contact.txt, < readers/GemProxDU_contactless.txt, readers/GemProxSU.txt, < readers/GemProxSU_contact.txt, readers/GemProxSU_contactless.txt: < Concat the 2 interfaces of the GemProxDU and GemProxSU in only 1 < .txt file each now that matrix.py can support it < * [r5599] src/parse.c: Align the number of lines and characters per < line in wLcdLayout parse < < 2011-02-13 Ludovic Rousseau < < * [r5596] readers/ATMEL_AT91SO.txt, readers/CardMan3821.txt, < readers/GemPCPinpadv2.txt, readers/Kobil_EMV_CAP.txt, < readers/Kobil_mIDentity_visual.txt, < readers/Todos_Connectable.txt, readers/Todos_Cx00.txt, < readers/Vasco_DP855.txt, readers/Vasco_DP865.txt, < readers/Xiring_Leov2.txt, readers/Xiring_MyLeo.txt, < readers/Xiring_XI-SIGN.txt, readers/Xiring_XI-SIGN_6000.txt: < Correctly parse wLcdLayout (the 2 bytes were interverted) < * [r5595] src/parse.c: The bytes for wLcdLayout were interverted < * [r5594] examples/scardcontrol.c: Use a SCARD_SHARE_SHARED instead < of SCARD_SHARE_DIRECT since we are really talking to the card, < not just to the reader. So SCardConnect() has to power on the < card if needed. < < 2011-02-11 Ludovic Rousseau < < * [r5593] src/Makefile.am: Do not add the version to the library < name < < Thanks to Diego Elio Pettenò for the idea < * [r5592] src/Makefile.am: make parse a noinst_PROGRAMS < < Thanks to Diego Elio Pettenò for the idea < < 2011-02-09 Ludovic Rousseau < < * [r5586] readers/Xiring_MyLeo.txt: Add Xiring MyLeo reader < < 2011-02-04 Ludovic Rousseau < < * [r5578] src/commands.c: CmdXfrBlockCHAR_T0(): use 'int' instead < of 'char' for backup_len variable since it can contain up to 256. < < Thanks to el Tuba for the patch. < < 2011-01-29 Ludovic Rousseau < < * [r5570] readers/supported_readers.txt: Add Xiring Leo v2 < * [r5565] readers/Xiring_Leov2.txt: New firmware release < < 2011-01-28 Ludovic Rousseau < < * [r5563] contrib/RSA_SecurID/RSA_SecurID_getpasswd.c: Correctly < display the 2 last bytes (status word) instead of potentially < garbage in the received buffer. < * [r5562] contrib/RSA_SecurID/RSA_SecurID_getpasswd.c: Correctly < identify the command numbers in the error messages < < 2011-01-20 Ludovic Rousseau < < * [r5542] src/openct/proto-t1.c: t1_xcv(): remove useless < affectation < < openct/proto-t1.c:675:3: warning: Value stored to 'rmax' is never < read rmax = rmax_int; ^ ~~~~~~~~ < * [r5541] src/commands.c: SecurePINVerify() & SecurePINModify(): < ignore the returned value of t1_build() < < commands.c:416:3: warning: Value stored to 'ret' is never read < ret = t1_build(&((get_ccid_slot(reader_index))->t1), ^ < ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ commands.c:653:3: < warning: Value stored to 'ret' is never read ret = < t1_build(&((get_ccid_slot(reader_index))->t1), ^ < ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ < * [r5540] src/commands.c: T0ProcSW1(): remove useless affectations < < commands.c:1818:2: warning: Value stored to 'in_buf' is never < read in_buf++; ^~~~~~~~ commands.c:1817:2: warning: Value stored < to 'rcv_buf' is never read rcv_buf++; ^~~~~~~~~ < < 2011-01-19 Ludovic Rousseau < < * [r5527] readers/iDream.txt: update < < 2011-01-18 Ludovic Rousseau < < * [r5516] src/openct/proto-t1.c: Add an explicit cast to avoid a < compiler warning < < openct/proto-t1.c:775:10: warning: comparison of integers of < different signs: 'int' and 'unsigned int' [-Wsign-compare] || (n < != 4 + t1->rc_bytes) ... ~ ^ ~~~~~~~~~~~~~~~~ < * [r5515] src/ifdhandler.c: Add an explicit cast to avoid a < compiler warning < < ifdhandler.c:410:16: warning: comparison of integers of different < signs: 'unsigned long' and 'int' [-Wsign-compare] if (*Length >= < CcidSlots[reader_index].nATRLength) ~~~~~~~ ^ < ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ < * [r5514] src/commands.c: Add an explicit cast to avoid a compiler < warning < < commands.c:169:16: warning: comparison of integers of different < signs: 'unsigned int' and 'int' [-Wsign-compare] if (*nlength > < r-1) ~~~~~~~~ ^ ~~~ < * [r5513] src/commands.c: Do not redefine macro offsetof() if < already defined < < Thanks to clang(1) compiler commands.c:51:9: warning: 'offsetof' < macro redefined [-pedantic] #define offsetof(TYPE, MEMBER) < ((size_t) &((TYPE *)0)->MEMBER) ^ In file included from < commands.c:25: In file included from /usr/include/string.h:33: < /usr/lib/clang/1.1/include/stddef.h:41:9: note: previous < definition is here #define offsetof(t, d) __builtin_offsetof(t, < d) ^ < < 2011-01-13 Ludovic Rousseau < < * [r5499] src/ifdhandler.c: T1_card_timeout(): This is the < card/reader timeout. Add 1 second for the libusb timeout so we < get the error from the reader. < < 2011-01-07 Ludovic Rousseau < < * [r5495] src/ifdhandler.c: IFDHGetCapabilities(): multi slot < readers does not (yet) support < TAG_IFD_POLLING_THREAD_WITH_TIMEOUT < < The polling function will return for a event in any slot not just < the slot we are interested in. And the event will be lost for the < real slot. < * [r5494] src/ccid_usb.c: CloseUSB(): free the serial number string < only for the last slot since they all point to the same string. < < 2011-01-05 Ludovic Rousseau < < * [r5488] readers/Vasco_DP200.txt, readers/Vasco_DP860.txt, < readers/supported_readers.txt: Add Vasco DIGIPASS KEY 860 and < Vasco DIGIPASS KEY 200 < < 2011-01-04 Ludovic Rousseau < < * [r5477] readers/supported_readers.txt: Sort devices by Product ID < * [r5476] readers/supported_readers.txt: Reenable O2 Micro and < Blutronics "bogus" readers < * [r5475] src/ccid.h: Reenable O2MICRO_OZ776_PATCH since a new < patch is now included in revision 5473 < * [r5474] src/parse.c: Use get_ccid_device_descriptor() instead of < using usb_interface_descriptor->extra directly to support "bogus" < readers < * [r5473] src/ccid_usb.c, src/ccid_usb.h: Add and use < get_ccid_device_descriptor() to get the CCID descriptor including < a fix for bogus readers (Oz776, Reiner SCT and bludrive II) < < Thanks to Diego Elio Pettenò and Dario Leone for the patch < * [r5472] src/parse.c: Define log level to maximum to get error < messages from ccid_usb.c < * [r5471] src/parse.c: Rename variable usb_interface to < usb_interface_descriptor to better match the libusb type < * [r5470] src/parse.c: Rename variable extra to device_descriptor < * [r5465] src/.dependencies: Remove useless file < < 2011-01-03 Ludovic Rousseau < < * [r5463] readers/Neowave_Weneo3.txt, < readers/supported_readers.txt: Add a new Neowave Weneo token < < Closes Debian bug #570167 "libccid: New Neowave Weneo card < version with new productId" < < 2010-12-21 Ludovic Rousseau < < * [r5461] readers/Oberthur-ID-ONE_token_slim_v2.txt, < readers/supported_readers.txt: Add Oberthur ID-ONE TOKEN SLIM v2 < < 2010-12-17 Ludovic Rousseau < < * [r5458] src/ccid_usb.c: OpenUSBByName(): return STATUS_COMM_ERROR < instead of STATUS_NO_SUCH_DEVICE if the cause of the failure is < libusb_claim_interface(). The main cause if the use of OpenCT. < < The OpenCT detection code in pcsc-lite is not triggered if the < driver returns STATUS_NO_SUCH_DEVICE. So the driver must return < someting else in that case. < < 2010-12-16 Ludovic Rousseau < < * [r5457] readers/GemPCPinpadv2.txt: new firmware < * [r5455] readers/ACS_APG8201.txt, readers/supported_readers.txt: < Add ACS APG8201 PINhandy 1 < < 2010-12-15 Ludovic Rousseau < < * [r5451] readers/Eutron_SIM_Pocket_Combo_(Card_Reader).txt, < readers/Eutron_SIM_Pocket_Combo_(SIM_Reader).txt: regenerate < * [r5450] readers/Eutron_SIM_Pocket_Combo_(Card_Reader).txt, < readers/Eutron_SIM_Pocket_Combo_(SIM_Reader).txt, < readers/SIM_Pocket_Combo.txt: Rename and split < SIM_Pocket_Combo.txt in Eutron_SIM_Pocket_Combo_(Card_Reader).txt < and Eutron_SIM_Pocket_Combo_(SIM_Reader).txt < < The device contains a hub with 3 devices: 2 CCID card readers and < a USB Mass storage < < 2010-12-12 Ludovic Rousseau < < * [r5445] readers/supported_readers.txt: Add Feitian SCR310 < * [r5444] readers/Feitian_SCR310.txt: Feitian SCR310 reader (also < labeled Rokey 301) < < 2010-12-10 Ludovic Rousseau < < * [r5437] src/ccid_usb.c: OpenUSBByName(): use the correct type to < fix compiler warning < < ccid_usb.c: In function `OpenUSBByName': ccid_usb.c:294: warning: < comparison between signed and unsigned integer expressions < * [r5436] readers/Todos_Connectable.txt: Todos Connectable reader < < 2010-12-03 Ludovic Rousseau < < * [r5430] README, configure.in: release 1.4.1 < < 2010-12-01 Ludovic Rousseau < < * [r5425] readers/Fsij_gnuk.txt, readers/supported_readers.txt: Add < Free Software Initiative of Japan Gnuk token < < 2010-11-20 Ludovic Rousseau < < * [r5409] readers/SpringCard_CSB6_Ultimate.txt: new firmware < < 2010-11-17 Ludovic Rousseau < < * [r5404] readers/Xiring_Leov2.txt: Add Xiring Leo v2 < * [r5403] src/parse.c: define DISPLAY_EXTRA_VALUES to display the < extra (invalid) values returned by bNumClockSupported and < bNumDataRatesSupported < < 2010-11-12 Ludovic Rousseau < < * [r5397] readers/Athena_IDProtect_Key.txt, < readers/supported_readers.txt, src/ccid_usb.c: Athena IDProtect < Key v1 was bogus. The v2 should work. < * [r5396] readers/CardMan6121.txt: Regenerate < < 2010-11-08 Ludovic Rousseau < < * [r5389] src/ifdhandler.c: IFDHCreateChannelByName(): increase the < timeout from 100ms to 1000ms to give more time to the reader to < setup and answer. < < 100ms is too short for the Kobil KAAN Base for example. < < 2010-11-05 Ludovic Rousseau < < * [r5382] src/ccid_serial.c: ReadSerial(): further improve check < from revision 5381 < * [r5381] src/ccid_serial.c: ReadSerial(): avoids a possible < integer overflow if the CCID frame is corrupted or malign. < < Thanks to Rafael Dominguez Vega for the bug report < < 2010-10-27 Ludovic Rousseau < < * [r5365] readers/BZH_uKeyCI800-K1.txt, < readers/supported_readers.txt: Add BZH uKeyCI800-K18 < < 2010-10-26 Ludovic Rousseau < < * [r5363] readers/supported_readers.txt: Normalize the Vid and Pid < hex values < * [r5361] readers/SCR3310_2.txt, readers/supported_readers.txt: Add < a new model of SCM SCR 3310 < * [r5360] readers/Akasa_AK-CR-03.txt: Add Akasa AK-CR-03 reader < < 2010-10-21 Ludovic Rousseau < < * [r5330] src/ifdhandler.c: Use TAG_IFD_POLLING_THREAD_WITH_TIMEOUT < instead of TAG_IFD_POLLING_THREAD to support the auto power off < feature introduced in pcsc-lite revision 5328 < * [r5329] src/ifdhandler.c: Remove two useless static function < declarations < < 2010-10-19 Ludovic Rousseau < < * [r5325] src/ifdhandler.c: get_IFSC(): 0xFF is not a valid value < for IFSC according to ISO 7816-3, CCID and MasterCard standards. < The maximum value is 0xFE. < < The "TIVU SAT" from ITALY www.tivu.tv card has such an IFSC in < its ATR: 3F FF 95 00 FF 91 81 71 FF 47 00 54 49 47 45 52 30 30 33 < 20 52 65 76 32 35 30 64 < < 2010-10-14 Ludovic Rousseau < < * [r5320] src/Makefile.am: src/pcscd_ccid.rules has been renamed to < src/92_pcscd_ccid.rules in revision 5263. So update the name in < INSTALL_UDEV_RULE_FILE < * [r5319] src/Makefile.am: Use /bin/echo instead of the echo shell < version to use color escape codes < < Thanks to Martin Paljak for the patch < * [r5318] configure.in, src/Info.plist.src, src/Makefile.am, < src/create_Info_plist.pl: Remove --enable-udev option since it is < not used anymore with libhal. The udev rules file is now used to < change the access rights of the device and not send a hotplug < signal to pcscd. < < 2010-10-13 Ludovic Rousseau < < * [r5312] configure.in: Need pcsc-lite 1.6.5 for < TAG_IFD_POLLING_THREAD_WITH_TIMEOUT < * [r5311] src/Makefile.am: pcscd_ccid.rules is renamed < 92_pcscd_ccid.rules in revision 5263 < * [r5310] Makefile.am: MacOSX/reader.h.in is now replaced by < MacOSX/reader.h since pcsc-lite revision 5254 < * [r5309] configure.in: build: remove use_usb_interrupt variable < which is not set. < < Thanks to Martin Paljak for the patch < < 2010-10-06 Ludovic Rousseau < < * [r5284] README: Update some paragraphs < * [r5282] README: Remove the "Known problems" section about Mac OS < X libusb since we know use libusb-1.0. The bug should/may have < been fixed. < < 2010-09-20 Ludovic Rousseau < < * [r5263] src/92_pcscd_ccid.rules, src/pcscd_ccid.rules: Rename to < add the number in the file name. The file shall be _after_ < 91-permissions.rules on Debian. < < See http://permalink.gmane.org/gmane.linux.hotplug.devel/16139 < < 2010-09-15 Ludovic Rousseau < < * [r5257] MacOSX/configure, MacOSX/reader.h, MacOSX/reader.h.in: No < need to convert reader.h.in in reader.h since revision 5252. < < 2010-09-14 Ludovic Rousseau < < * [r5253] examples/scardcontrol.c: No need to use HOST_TO_CCID_16() < and HOST_TO_CCID_32() since revision 5252 < * [r5252] src/commands.c: SecurePINVerify() & SecurePINModify(): < Accept big and little endian byte orders for multibytes fields < < The application should not use HOST_TO_CCID_16() and < HOST_TO_CCID_32() any more and just use the normal byte order of < the architecture. < < Thanks to Douglas E. Engert for the patch < http://archives.neohapsis.com/archives/dev/muscle/2010-q3/0145.html < < 2010-09-13 Ludovic Rousseau < < * [r5251] src/pcscd_ccid.rules: Use GROUP= instead of RUN+= to < avoid a race < < See the thread "Use GROUP= in a rule matching an interface of the < device?" on linux-hotplug@vger.kernel.org mailing list < http://www.spinics.net/lists/hotplug/msg04165.html < < 2010-09-04 Ludovic Rousseau < < * [r5244] src/pcscd_ccid.rules: Add a ENV{DEVTYPE}!="usb_device" < rule as suggested by Marco d'Itri < < 2010-09-03 Ludovic Rousseau < < * [r5237] readers/HP_kus-0133.txt, readers/supported_readers.txt: < HP kus-0133 is not supported < * [r5236] readers/supported_readers.txt: update URL to use ccid/ < * [r5229] readers/Precise_200_MC.txt: new firmware < < 2010-09-02 Ludovic Rousseau < < * [r5223] src/pcscd_ccid.rules: Change the group ownership of the < device to "pcscd" when a reader is connected < * [r5222] src/pcscd_ccid.rules: Add $Id$ < * [r5221] src/pcscd_ccid.rules: Factorize teh SUBSYSTEMS=="usb" < test < < 2010-08-31 Ludovic Rousseau < < * [r5207] readers/ReinerSCT_cyberJack_RFID_basis.txt, < readers/supported_readers.txt: Add ReinerSCT cyberJack RFID basis < * [r5206] src/ifdhandler.c: ifdhandler.c: In function < ‘IFDHPolling’: ifdhandler.c:328: warning: unused variable ‘ret’ < * [r5205] src/ccid_usb.c, src/ifdhandler.c: Convert the return < value from libusb code to IFD_* in InterruptRead() instead of < IFDHPolling(). < < We do not return IFD_NO_SUCH_DEVICE any more. This value will be < returned by the next libusb_*() call < < 2010-08-26 Ludovic Rousseau < < * [r5189] readers/supported_readers.txt: Remove O2 Micro Oz776 and < Blutronics Bludrive II CCID since they are no more supported < since version 1.4.0 < < The USB descriptor is bogus and the patch in < get_ccid_usb_interface() does not work with libusb-1.0 < * [r5188] src/ifdhandler.c: IFDHSetCapabilities(): remove dead < comments < * [r5187] configure.in: Add --enable-embedded (default is no) to < build libccid for an embedded system. < < This will activate the NO_LOG option to disable logging and limit < RAM and disk consumption. < * [r5185] src/ccid_serial.c, src/ccid_usb.c, src/commands.c, < src/ifdhandler.c, src/utils.c: Include config.h before any other < local includes to the configuration defined in config.h is used. < < This is just a preventive change. < < 2010-08-24 Ludovic Rousseau < < * [r5182] src/ccid.c: ccid_open_hack_pre(): call InterruptRead() < only if the device has an interrupt pipe endpoint (3 in total) < * [r5181] readers/supported_readers.txt: add Gemalto SG CCID < < 2010-08-23 Ludovic Rousseau < < * [r5176] src/ccid.c: ccid_open_hack_pre(): use InterruptRead() < with a timeout of 100ms instead of 10ms to give more time to the < device to respond. < < This allows the Gemalto SG CCID to always start correctly, not < just once in a while. < * [r5174] src/ccid.c: ccid_open_hack_pre(): Do not disable the call < to InterruptRead() on Mac OS X. We now use libusb-1.0 and the < timeout should work. < < This allows the Gemalto SG CCID to work under Mac OS X. < * [r5173] readers/Gemalto_SG.txt, readers/supported_readers.txt: < Add Gemalto Smart Guardian (SG CCID) < * [r5172] readers/supported_readers.txt: Rename Gemalto Smart < Enterprise Guardian < < 2010-08-19 Ludovic Rousseau < < * [r5166] MacOSX/configure: Use the full include path for libusb.h < * [r5165] src/Makefile.am, src/ccid_usb.c, src/ifdhandler.c, < src/simclist.c, src/simclist.h: Use the new Info.plist parser API < * [r5164] src/ccid_serial.c: OpenSerialByName(): < TOKEN_MAX_VALUE_SIZE is no more defined in parser.h < < Use MAX_DEVICENAME defined as 255 in pcscd.h < < 2010-08-17 Ludovic Rousseau < < * [r5153] contrib/Kobil_mIDentity_switch/Kobil_mIDentity_switch.c, < src/ccid_usb.c, src/ccid_usb.h: Do not hardcode the libusb-1.0 < include header path (remove the libusb-1.0/ part) < < 2010-08-05 Ludovic Rousseau < < * [r5119] configure.in: Do not hardcode the libusb.h path. The h < file is not at the same place on kfreebsd < < Fixes Debian bug #591782 < < 2010-08-04 Ludovic Rousseau < < * [r5108] README, configure.in: release 1.4.0 < < 2010-08-02 Ludovic Rousseau < < * [r5094] readers/supported_readers.txt: Add support of the SCM SDI < 010 again. At least the contact interface can be used. < < This should not conflict with the SCM proprietary driver since < the CCID driver will only work with pcsc-lite > 1.6.2 and recent < pcsc-lite (>= 1.5.4) will load any specific driver before my < "Class" CCID driver. < < 2010-08-01 Ludovic Rousseau < < * [r5090] src/Makefile.am: Install the serial configuration find in < /etc/reader.conf.d/libccidtwin instead of /etc/reader.conf. pcscd < (>= 1.6.0) will parse all the files from /etc/reader.conf.d/ < * [r5087] readers/supported_readers.txt: Add SCM SCL01x Contactless < Reader (disabled since unsupported) < * [r5086] readers/supported_readers.txt: Add Gemalto Hybrid < Smartcard Reader < * [r5084] readers/Tianyu_Smart_Card_Reader.txt, < readers/supported_readers.txt: Add Tianyu Smart Card Reader < * [r5083] src/ccid.c, src/commands.c: Do not #include "ccid_usb.h" < Compilation fails on Mac OS X for the libccidtwin library < < 2010-07-29 Ludovic Rousseau < < * [r5078] src/ifdhandler.c: add get_IFSC() to get the IFSC value < from the ATR. < < IFSC is not just the value of TAi (i>2) For example "3B 80 81 1F < 07 19" has a TA3 but it is not the IFSC since T=15 is defined in < TD2 so before TA3 < * [r5077] src/ccid_usb.c: libusb <= 1.0.8 does not implement a < reference counter in libusb_init()/libusb_exit() for the default < context. < < We then use our own and unique libusb context. < < 2010-07-27 Ludovic Rousseau < < * [r5076] src/parse.c: check the return value of < libusb_get_active_config_descriptor() < * [r5075] src/Makefile.am, src/parse.c: parse do need some parts of < libccid < * [r5074] src/Makefile.am: parse do not need to be linked with < libccid < < 2010-07-26 Ludovic Rousseau < < * [r5072] src/ccid.c: ccid_open_hack_post(): update the Gemalto < proprietary command to switch in EMV mode. 0xA0 was an old value < no more used on new products. < < 2010-07-02 Ludovic Rousseau < < * [r5055] MacOSX/configure: No need to respecify -arch in LDFLAGS < since we already have the correct architectures specified in < CFLAGS < * [r5054] MacOSX/configure: Fix a comment: we do not use < libusb-compat-0.1 any more < < 2010-07-01 Ludovic Rousseau < < * [r5052] src/parse.c: ccid_parse_interface_descriptor(): document < "USB Wake up signaling supported on card insertion and removal" < in dwFeatures < < 2010-06-30 Ludovic Rousseau < < * [r5050] readers/Broadcom_5880v3.txt, < readers/supported_readers.txt: Add a new Broadcom 5880 reader < (idProduct: 0x5802) < < 2010-06-29 Ludovic Rousseau < < * [r5043] src/ccid_usb.c: OpenUSBByName(): use DEBUG_CRITICAL() < instead of printf() to log an error < < 2010-06-22 Ludovic Rousseau < < * [r5034] src/ccid_usb.c: WriteUSB() & ReadUSB(): also display the < value returned by libusb. The error is not always reported by the < kernel so errno is not significant. < * [r5033] src/debug.h: Add DEBUG_CRITICAL5() function < * [r5030] configure.in: Request pcsc-lite 1.6.2 minimum (instead of < 1.6.0) to have TAG_IFD_STOP_POLLING_THREAD defined < * [r5028] src/ccid_usb.c, src/ccid_usb.h, src/ifdhandler.c: Add < support of TAG_IFD_STOP_POLLING_THREAD and use of the < asynchronous libusb API to be able to stop a transfer. < < We are now "polling" for card movements every 1 hour or once an < event is detected on the interrupt endpoint of the device. < < Another gain is that the driver will terminate "instantly" after < pcscd request instead of after a maximum of 2 seconds (previous < polling timeout). < * [r5027] src/ccid_usb.c: Use ctx instead of NULL to keep the < information that this parameter is the libusb context. < * [r5026] src/ccid_usb.c: OpenUSBByName(): call libusb_exit() if we < can't use the reader < < CloseUSB(): call libusb_exit() before exiting < < 2010-06-21 Ludovic Rousseau < < * [r5025] src/ccid_usb.c: OpenUSBByName(): free the libusb < allocated list & devices when we are done with it < * [r5024] src/ccid_usb.c: OpenUSBByName(): call libusb_init() just < before the next libusb call < * [r5019] readers/ACS_AET65.txt: add ACS AET65 (same idProduct as < many other ACS devices) < < 2010-06-19 Ludovic Rousseau < < * [r5017] readers/LTC36.txt, readers/supported_readers.txt: add < C3PO LTC36 < < 2010-06-18 Ludovic Rousseau < < * [r5016] MacOSX/configure: Only link with libusb-1.0.a without the < 0.1 compatibility layer now the library has been ported to < libusb-1.0 API < * [r5015] contrib/Kobil_mIDentity_switch/Kobil_mIDentity_switch.c: < use libusb_detach_kernel_driver() from libusb-1.0 instead of the < *_np() version < < 2010-06-17 Ludovic Rousseau < < * [r5014] src/ccid.c, src/ifdhandler.c: use PROTOCOL_CCID instead < of 0 when checking bInterfaceProtocol < * [r5013] src/ccid.c, src/ccid.h, src/commands.c, src/ifdhandler.c: < Rename ICCD_A in PROTOCOL_ICCD_A, ICCD_B in PROTOCOL_ICCD_B and < add PROTOCOL_CCID for plain CCID < * [r5012] src/ccid_usb.c: get_end_points(): use < LIBUSB_ENDPOINT_DIR_MASK instead of LIBUSB_TRANSFER_TYPE_MASK to < get the direction of an endpoint. < < .bulk_out field were never set and then not working (No such file < or directory) < * [r5011] src/ccid_usb.c: WriteUSB() & ReadUSB(): the same function < libusb_bulk_transfer() is now ued to read and write to a USB < device. So I use "write failed" and "read failed" instead of the < libusb function name to log an error. < * [r5010] src/ccid_usb.c: WriteUSB(), ReadUSB() & InterruptRead(): < display strerror(errno) instead of just the code returned by the < libusb_*_transfer() function < < 2010-06-16 Ludovic Rousseau < < * [r5007] readers/Todos_Cx00.txt, readers/supported_readers.txt: < add Todos CX00 < * [r5002] readers/Dectel_CI692.txt, readers/supported_readers.txt: < add Dectel CI692 < * [r5001] readers/Kingtrust_Multi-Reader.txt, < readers/supported_readers.txt: add Kingtrust Multi-Reader < * [r4999] SCARDGETATTRIB.txt: replace tabs by spaces < * [r4998] SCARDGETATTRIB.txt: add SCARD_ATTR_ICC_INTERFACE_STATUS, < SCARD_ATTR_ICC_PRESENCE and SCARD_ATTR_VENDOR_IFD_SERIAL_NO < * [r4997] SCARDCONTOL.txt: add IOCTL_FEATURE_GET_TLV_PROPERTIES < < 2010-06-14 Ludovic Rousseau < < * [r4993] src/ccid_usb.c: use libusb-1.0/libusb.h instead of usb.h < (from libusb-0.1) < < 2010-06-10 Ludovic Rousseau < < * [r4988] src/ccid.h: The O2MICRO OZ776 patch (for OZ776, < OZ776_7772, REINER_SCT and BLUDRIVEII_CCID) is no more supported < with libusb-1.0 < * [r4987] configure.in, < contrib/Kobil_mIDentity_switch/Kobil_mIDentity_switch.c, < src/ccid_usb.c, src/ccid_usb.h, src/ifdhandler.c, src/parse.c: < Use libusb-1.0 instead of libusb-0.1 < < 2010-06-04 Ludovic Rousseau < < * [r4979] README, configure.in: release 1.3.13 < < 2010-06-01 Ludovic Rousseau < < * [r4975] readers/GemPCTwin.txt: update < * [r4973] src/ccid.c, src/ccid.h, src/ccid_ifdhandler.h, < src/ccid_serial.c, src/ccid_serial.h, src/ccid_usb.c, < src/ccid_usb.h, src/commands.h, src/convert_version.pl, < src/create_Info_plist.pl, src/debug.c, src/debug.h, src/defs.h, < src/ifdhandler.c, src/parse.c, src/utils.c, src/utils.h: update < copyright date < * [r4972] src/parse.c: No need to #include since revision < 4907 < * [r4971] configure.in: remove duplicate errno.h in < AC_CHECK_HEADERS() < * [r4970] configure.in, m4/as-ac-expand.m4: Correctly display < $bindir and $sysconfdir values when they are not changed from the < default values (instead of NONE/bin and NONE/etc) < < 2010-05-27 Ludovic Rousseau < < * [r4965] readers/Lenovo.txt: update < * [r4963] src/ccid_usb.c: OpenUSBByName(): allow the combination of < USE_COMPOSITE_AS_MULTISLOT and libhal. It does work so do not < prevent its use. < < 2010-05-20 Ludovic Rousseau < < * [r4956] src/ccid.h, src/ccid_serial.c, src/ccid_usb.c, < src/ifdhandler.c: Add support of SCARD_ATTR_VENDOR_IFD_SERIAL_NO < < 2010-05-15 Ludovic Rousseau < < * [r4943] readers/GemPCPinpadv2.txt: Gemalto PC pinpad v1+ < < 2010-05-10 Ludovic Rousseau < < * [r4939] src/commands.c: Revert revision 4936 (stupid me) < * [r4938] src/ifdhandler.c: IFDHCreateChannelByName() & < IFDHCreateChannel(): use the low level CmdGetSlotStatus() instead < of IFDHICCPresence() to be able to fix the read timeout. < < We use a read timeout of 100 milliseconds instead of 2 secondes. < The maximum wait time is now 200 milliseconds instead of 4 < seconds. < < This increases the startup time a lot (up to 95%) when pcscd is < auto started. < * [r4937] src/ccid.c, src/ccid.h, src/ccid_serial.c, < src/ccid_usb.c, src/commands.c, src/defs.h, src/ifdhandler.c: < change read timeout from second to millisecond unit to have a < sub-second control < * [r4936] src/commands.c: SecurePINVerify() & SecurePINModify(): < use min() instead of max() to get a minimum of 30 seconds for the < read timeout < < 2010-05-08 Ludovic Rousseau < < * [r4932] configure.in: Minimum version of pcsc-lite is 1.6.0 < instead of the unreleased 1.5.6 < * [r4931] README, configure.in: release 1.3.12 < < 2010-05-07 Ludovic Rousseau < < * [r4930] MacOSX/configure: - use libusb-1.0 and libusb-compat-0.1 < - build for Snow Leopard < * [r4928] src/ifdhandler.c: IFDHControl(): set < PCSCv2_PART10_PROPERTY_bEntryValidationCondition specific value < only for the Gemalto PC Pinpad V1 & Covadis Véga-Alpha readers. < * [r4927] examples/scardcontrol.c: Reformat output < * [r4926] src/ifdhandler.c: IFDHControl(): The Covadis Véga-Alpha < share the same firmware with the Gemalto PC Pinpad V1 < * [r4925] src/ifdhandler.c: IFDHControl(): add comments < * [r4924] src/ifdhandler.c: IFDHControl(): add support of < IOCTL_FEATURE_GET_TLV_PROPERTIES bMinPINSize & bMaxPINSize for < Gemalto Pinpad V1 < < 2010-05-03 Ludovic Rousseau < < * [r4914] readers/SCR3500.txt: add SCM SCR3500 (same idProduct as < SCR355 but different firmware) < < 2010-05-02 Ludovic Rousseau < < * [r4908] readers/Athena_IDProtect_Key.txt, < readers/supported_readers.txt: add Athena IDProtect Key < (unsupported see < http://www.opensc-project.org/pipermail/opensc-user/2010-May/004023.html) < < 2010-05-01 Ludovic Rousseau < < * [r4907] src/ccid_usb.h: Do not try to be smart and always < #include < < Should fix FreeBSD issues < < 2010-04-29 Ludovic Rousseau < < * [r4902] src/commands.c: SecurePINVerify() & SecurePINModify(): < with a TPDU reader and a T=1 card the ns & nr sequence numbers < were not correctly handled if the CCID command was rejected at < the reader level (not sent to the card). The next APDU sent to < the card would fail. < < 2010-04-25 Ludovic Rousseau < < * [r4897] src/ifdhandler.c: IFDHControl(): reuse ccid_descriptor < variable when available < * [r4896] src/ccid.h, src/ifdhandler.c: FEATURE_MCT_READER_DIRECT < is also supported by the Kobil mIDentity visual < < 2010-04-24 Ludovic Rousseau < < * [r4893] readers/Kobil_Smart_Token.txt, < readers/Kobil_mIDentity_4smart.txt, < readers/Kobil_mIDentity_4smart_AES.txt, < readers/Kobil_mIDentity_fullsize.txt, < readers/Kobil_mIDentity_fullsize_AES.txt, < readers/Kobil_mIDentity_visual.txt, < readers/supported_readers.txt: add KOBIL Smart Token, KOBIL < mIDentity 4smart, KOBIL mIDentity 4smart AES, KOBIL mIDentity < visual, KOBIL mIDentity fullsize, KOBIL mIDentity 4smart fullsize < AES < < 2010-04-18 Ludovic Rousseau < < * [r4886] src/commands.c: CmdXfrBlockCHAR_T0(): debug ICCD type A < algorithm < < Thanks to Alexander Abarzhi for the patch < < 2010-04-16 Ludovic Rousseau < < * [r4879] src/ifdhandler.c: Fix Studio CC warning "ifdhandler.c", < line 1275: warning: initializer does not fit or is out of range: < 248 < * [r4878] src/ifdhandler.c: Fix Sun Studio CC warnings < "ifdhandler.c", line 910: warning: initializer does not fit or is < out of range: 250 "ifdhandler.c", line 910: warning: initializer < does not fit or is out of range: 255 "ifdhandler.c", line 910: < warning: initializer does not fit or is out of range: 129 < "ifdhandler.c", line 911: warning: initializer does not fit or is < out of range: 128 "ifdhandler.c", line 911: warning: initializer < does not fit or is out of range: 193 "ifdhandler.c", line 911: < warning: initializer does not fit or is out of range: 192 < "ifdhandler.c", line 912: warning: initializer does not fit or is < out of range: 144 "ifdhandler.c", line 912: warning: initializer < does not fit or is out of range: 177 < * [r4876] readers/SCL01x.txt: SCM SCL01x Contactless Reader < < 2010-04-09 Ludovic Rousseau < < * [r4869] readers/ATMEL_AT90SCR050.txt, < readers/ATMEL_AT90SCR100.txt, readers/ATMEL_VaultIC420.txt, < readers/ATMEL_VaultIC440.txt, readers/ATMEL_VaultIC460.txt, < readers/supported_readers.txt: Add Atmel AT90SCR100, Atmel < AT90SCR050, Atmel VaultIC420, Atmel VaultIC440, Atmel VaultIC460 < < 2010-04-06 Ludovic Rousseau < < * [r4856] readers/supported_readers.txt: Remove duplicate Vid/Pid < entry for Alcor Micro SCR001 and Micro AU9520 < * [r4854] readers/Vasco_DP855.txt, readers/Vasco_DP865.txt, < readers/Vasco_DPKey200.txt, readers/Vasco_DPKey860.txt, < readers/supported_readers.txt: Add Vasco DIGIPASS KEY 860, Vasco < DIGIPASS KEY 200, Vasco DP855, Vasco DP865 < < 2010-03-31 Ludovic Rousseau < < * [r4849] readers/GoldKey_PIV_Token.txt, < readers/supported_readers.txt: add GoldKey PIV Token < < 2010-03-30 Ludovic Rousseau < < * [r4847] src/ccid_ifdhandler.h, src/ifdhandler.c: add support of < FEATURE_GET_TLV_PROPERTIES < * [r4846] examples/scardcontrol.c: add support of < FEATURE_GET_TLV_PROPERTIES < < 2010-03-27 Ludovic Rousseau < < * [r4844] src/Info.plist.src, src/commands.c, src/ifdhandler.c: < remove spaces and tabs at end of line < < 2010-03-14 Ludovic Rousseau < < * [r4815] readers/supported_readers.txt: Enable the Broadcom 5880 < reader. It should work after a firmware upgrade. < < 2010-03-12 Ludovic Rousseau < < * [r4814] INSTALL, examples/scardcontrol.c, < readers/supported_readers.txt, src/ccid_serial.c, < src/reader.conf.in: Rename Gemplus in Gemalto < < 2010-03-05 Ludovic Rousseau < < * [r4796] src/commands.c: CmdXfrBlockCHAR_T0(): limit the received < length to 0x1000 for ICCD Version A length is 16-bits and < usb_control_msg() fails with "Invalid argument" if the length is < > 0x100 < < The same patch was already present in CmdXfrBlockAPDU_extended < for ICCD Version B < < Thanks to Alexander Abarzhi for the patch < * [r4795] src/commands.c: CCID_Receive(): set the received length < for a ICCD Version A device < < Thanks to El Tuba for the patch < < 2010-02-26 Ludovic Rousseau < < * [r4780] readers/supported_readers.txt: SCM SDI 010 removed on < manufacturer request since not supported by my driver < < 2010-02-24 Ludovic Rousseau < < * [r4776] readers/supported_readers.txt: Removed Smart SBV280 on < manufacturer request. They use libusb directly. < * [r4775] readers/Broadcom_5880.txt: regenerate < < 2010-02-23 Ludovic Rousseau < < * [r4771] readers/Covadis_Auriga.txt, < readers/supported_readers.txt: add Covadis Auriga < < 2010-02-12 Ludovic Rousseau < < * [r4761] readers/id3_CL1356D.txt, readers/supported_readers.txt: < id3_CL1356D.txt is a duplicate of id3_CL1356T5.txt < * [r4759] readers/id3_CL1356T5.txt, readers/supported_readers.txt: < add id3 CL1356T5 < * [r4757] readers/Gemalto_PDT.txt, readers/supported_readers.txt: < update Gemalto PDT < < 2010-02-09 Ludovic Rousseau < < * [r4750] src/ccid_usb.c: Fix 1 compiler warning < < ccid_usb.c: In function ‘InterruptRead’: ccid_usb.c:987: warning: < pointer targets in passing argument 3 of ‘log_xxd’ differ in < signedness /usr/include/PCSC/debuglog.h:83: note: expected ‘const < unsigned char *’ but argument is of type ‘char *’ < * [r4749] src/commands.c: Fix 2 compiler warnings < < commands.c: In function ‘CCID_Transmit’: commands.c:1107: < warning: passing argument 5 of ‘ControlUSB’ discards qualifiers < from pointer target type ccid_usb.h:43: note: expected ‘unsigned < char *’ but argument is of type ‘const unsigned char *’ < commands.c:1130: warning: passing argument 5 of ‘ControlUSB’ < discards qualifiers from pointer target type ccid_usb.h:43: note: < expected ‘unsigned char *’ but argument is of type ‘const < unsigned char *’ < * [r4748] src/ccid_usb.c: Fix a compiler warning < < ccid_usb.c: In function ‘OpenUSB’: ccid_usb.c:138: warning: < unused parameter ‘Channel’ < * [r4747] readers/Makefile.am: Do not include the reader < descriptions in the archive, only the supported_readers.txt file < * [r4746] Makefile.am, configure.in: use readers/ again (revert < revision 4745) < * [r4745] Makefile.am, configure.in: Do not include the readers/* < files in the archive < < 2010-02-05 Ludovic Rousseau < < * [r4712] readers/CL1356T.txt, readers/id3_CL1356T.txt: rename < CL1356T.txt in id3_CL1356T.txt like the other id3_* readers < < 2010-02-04 Ludovic Rousseau < < * [r4709] src/commands.c: add Copyright (C) 2005 Martin Paljak and < update my copyright date < < 2010-01-29 Ludovic Rousseau < < * [r4694] readers/GPFCryptoStick.txt, < readers/supported_readers.txt: add German Privacy Foundation < Crypto Stick v1.2 < < 2010-01-22 Ludovic Rousseau < < * [r4684] configure.in: use LT_INIT(disable-static) instead of the < deprecated AM_DISABLE_STATIC < < 2010-01-21 Ludovic Rousseau < < * [r4680] configure.in: Static lib is disabled by default. Use < --enable-static if needed < < 2010-01-19 Ludovic Rousseau < < * [r4676] readers/GemPC_Express.txt: update < < 2010-01-13 Ludovic Rousseau < < * [r4665] readers/Ask_CPL108.txt, readers/supported_readers.txt: < ass Ask CPL108 < < 2010-01-11 Ludovic Rousseau < < * [r4655] readers/supported_readers.txt: update Gemalto Prox-DU and < Prox-SU names < * [r4654] readers/supported_readers.txt: update "Gemalto Prox DU" < name < < 2010-01-04 Ludovic Rousseau < < * [r4639] src/debug.c: debug.c: In function ‘log_msg’: debug.c:38: < warning: unused parameter ‘priority’ debug.c: In function < ‘log_xxd’: debug.c:51: warning: unused parameter ‘priority’ < * [r4638] src/ifdhandler.c: ifdhandler.c: In function < ‘IFDHSetCapabilities’: ifdhandler.c:553: warning: unused < parameter ‘Length’ ifdhandler.c:553: warning: unused parameter < ‘Value’ ifdhandler.c: In function ‘IFDHTransmitToICC’: < ifdhandler.c:1171: warning: unused parameter ‘RecvPci’ < * [r4637] contrib/Kobil_mIDentity_switch/Kobil_mIDentity_switch.c: < Kobil_mIDentity_switch.c: In function ‘main’: < Kobil_mIDentity_switch.c:136: warning: unused parameter ‘argc’ < Kobil_mIDentity_switch.c:136: warning: unused parameter ‘argv’ < * [r4636] src/openct/proto-t1.c: t1_release(): fix compilation < warning openct/proto-t1.c:116: warning: unused parameter ‘t1’ < < 2010-01-02 Ludovic Rousseau < < * [r4631] readers/Broadcom_5880v2.txt, < readers/supported_readers.txt: another Broadcom 5880 reader < (iProduct: 5880) which looks like to work correctly < < 2009-12-16 Ludovic Rousseau < < * [r4619] src/ccid_usb.c: Todos Argos Mini II with firmware before < 1.01 has a bogus CCID descriptor: "Automatic IFSD exchange as < first exchange (T=1)" is missing. You can't use a T=1 card with < this reader. < * [r4618] src/ccid_usb.c: Precise Biometrics Precise 250 MC with < firmware before 50.00 is bogus: time extension requests are not < sent back to the host < * [r4617] readers/Todos_AGM2_CCID.txt: firmware 1.01 < < 2009-12-15 Ludovic Rousseau < < * [r4614] examples/scardcontrol.c, src/ccid_ifdhandler.h, < src/ifdhandler.c: rename FEATURE_MCT_READERDIRECT in < FEATURE_MCT_READER_DIRECT < < 2009-12-13 Ludovic Rousseau < < * [r4610] src/ccid.c: ccid_open_hack_post(): get the language < selected during Mac OS X installation as language to use for < Covadis Véga-Alpha and Gemalto GemPC PinPad pinpad readers < < 2009-12-09 Ludovic Rousseau < < * [r4597] readers/Precise_250_MC.txt: firmware update < * [r4594] src/parse.c: do not generate extra space at end of line < < 2009-12-05 Ludovic Rousseau < < * [r4592] src/ccid_usb.c: Precise Biometrics Precise 200 MC with < firmware before 50.00 is bogus: time extension requests are not < sent back to the host < * [r4590] readers/supported_readers.txt: improve docmentation of < bogus readers < * [r4589] readers/supported_readers.txt: add OCS ID-One Cosmo Card < (with ProductID 0x6356) in a commented line (unsupported) < * [r4588] readers/Gemalto_HybridSmartcardReader.txt: Gemalto Hybrid < Smartcard Reader < < 2009-12-02 Ludovic Rousseau < < * [r4584] readers/Precise_200_MC.txt: new firmware < < 2009-11-18 Ludovic Rousseau < < * [r4556] readers/Oberthur-CosmoCard1.txt: other version of the OCS < ID-One Cosmo Card < < 2009-11-17 Ludovic Rousseau < < * [r4550] src/ccid.c, src/ccid.h, src/commands.c: The Covadis < Véga-Alpha reader is a GemPC pinpad inside. So we use the same < code to: - load the strings for the display - avoid limitation of < the reader < < Thanks to Loïs Lherbier for the patch < < 2009-11-13 Ludovic Rousseau < < * [r4545] src/commands.c: CmdGetSlotStatus(): the SCM SCR3310 also < reports an error 0xFE (ICC_MUTE) when no card is inserted. So < extend the special case to all readers and not just the O2MICRO < OZ776. < < Thanks to Ivan Vilata i Balaguer for the bug report (Debian bug < #555837) < < 2009-10-28 Ludovic Rousseau < < * [r4521] src/ccid_serial.c: set_ccid_descriptor(): reset < dwSlotStatus to IFD_ICC_PRESENT for the other slots of a < multislot reader (like a GemCore SIM Pro). < < This is needed because the state of dwSlotStatus may have already < been changed to IFD_ICC_NOT_PRESENT (by the polling thread) when < the second slot is created. The polling thread of the second slot < would then never check for a card since this check is only done < once. Slots are SAMs and the card is always present or absent. < < The problem was already dealt with on USB from the beginning but < not on serial. < < Thanks to Emmanuel Deloget for the patch. < < 2009-10-25 Ludovic Rousseau < < * [r4510] src/defs.h: change CMD_BUF_SIZE to support extended APDU < of up to 64kB. We need this size for readers in APDU mode to be < able to receive the card response in one block (chaining is not < always possible in this direction) < * [r4509] src/defs.h: remove useless #define < * [r4508] src/ifdhandler.c: FDHPowerICC(): use the exact length for < the PowerOn output buffer < * [r4507] src/defs.h: remove useless #defines < < 2009-10-24 Ludovic Rousseau < < * [r4505] configure.in: check for IFD_ERROR_INSUFFICIENT_BUFFER in < ifdhandler.h and simplify the PCSC checking code < < 2009-10-21 Ludovic Rousseau < < * [r4502] readers/Precise_250_MC.txt: new firmware < * [r4501] readers/Precise_200_MC.txt: new firmware < < 2009-10-18 Ludovic Rousseau < < * [r4499] src/ifdhandler.c: FDHGetCapabilities(): add support of < SCARD_ATTR_ICC_PRESENCE < < Required to support the Windows middleware that's used for French < Healthcar cards. < < Thanks to David Markowitz for the patch. < * [r4498] src/ifdhandler.c: FDHGetCapabilities(): add support of < SCARD_ATTR_ICC_INTERFACE_STATUS < < Required to support the Windows middleware that's used for French < Healthcar cards. < < Thanks to David Markowitz for the patch. < < 2009-10-14 Ludovic Rousseau < < * [r4493] readers/Smart_SBV280.txt, readers/supported_readers.txt: < add Smart SBV280 < < 2009-10-08 Ludovic Rousseau < < * [r4450] src/ccid_ifdhandler.h, src/ifdhandler.c: IFDHControl(): < do not check if FEATURE_IFD_PIN_PROPERTIES is defined since we < now require pcsc-lite >= 1.5.6 (with FEATURE_IFD_PIN_PROPERTIES < defined) < * [r4449] src/ifdhandler.c: IFDHGetCapabilities() & IFDHControl(): < return IFD_ERROR_INSUFFICIENT_BUFFER when appropriate < * [r4448] configure.in, src/commands.c: Require to have pcsc-lite < >= 1.5.6 to have IFD_ERROR_INSUFFICIENT_BUFFER defined in < ifdhandler.h < * [r4446] src/ccid_usb.c: Use usb_strerror() instead of < strerror(errno) to also get the libusb specifc error messages < * [r4441] README: The supported, should work and unsupported lists < are now online only. < < The information in the README file was not up to date and hard to < sync. < < 2009-10-02 Ludovic Rousseau < < * [r4417] src/ifdhandler.c: revert change in revision 4414. It is a < bug in the reader not the driver < * [r4416] ylwrap: update < * [r4414] src/ifdhandler.c: IFDHSetProtocolParameters(): with a T=1 < card, do not try to negociate IFSD if the reader works in APDU < mode < * [r4413] readers/Todos_AGM2_CCID.txt: update < < 2009-10-01 Ludovic Rousseau < < * [r4411] src/ifdhandler.c: IFDHControl(): typo in comment < < 2009-09-30 Ludovic Rousseau < < * [r4410] src/ifdhandler.c: IFDHControl(): PIN_PROPERTIES_STRUCTURE < structure do not have the wLcdMaxCharacters and wLcdMaxLines < fields anymore. Conform with Revision 2.02.06, April 2009 of < PCSCv2 part 10. < < Modified in pcsc-lite > 1.5.5 (revision 4378, 2009-09-08) < < 2009-09-28 Ludovic Rousseau < < * [r4401] src/ccid_usb.c: OpenUSBByName(): make the libhal scheme < parsing more robust. Readers serial "numbers" may contain '_' < characters < < 2009-09-25 Ludovic Rousseau < < * [r4397] src/ifdhandler.c: IFDHPowerICC(): remove a useless ; < < 2009-09-22 Ludovic Rousseau < < * [r4392] readers/CherrySmartTerminalXX7X.txt, < readers/supported_readers.txt: add Cherry SmartTerminal XX7X < * [r4390] examples/GPL-2, examples/Makefile.am: sample code is < GPLv2+ < * [r4389] src/commands.c: SecurePINVerify(): circumvent a Dell < keyboard problem avoid the command rejection because the Enter < key is still pressed. Wait a bit (250ms) for the (Enter) key to < be released. < < 2009-09-10 Ludovic Rousseau < < * [r4383] src/ccid.h, src/commands.c: circumvent bugs of the Dell < 413c:2100 keyboard < * [r4382] readers/DellSK-3106.txt: regenerate < * [r4380] src/Info.plist.src: typo in comment < < 2009-08-30 Ludovic Rousseau < < * [r4372] readers/Todos_AGM2_CCID.txt, < readers/supported_readers.txt: add Todos AGM2 CCID < < 2009-08-27 Ludovic Rousseau < < * [r4368] SCARDCONTOL.txt: List of SCardControl() commands < supported by the CCID driver < * [r4366] src/ifdhandler.c: IFDHControl(): return < IFD_ERROR_NOT_SUPPORTED instead of IFD_COMMUNICATION_ERROR if the < dwControlCode value is not supported < < 2009-07-31 Ludovic Rousseau < < * [r4360] src/ccid.c: ccid_open_hack_pre(): do not call < InterruptRead() on Mac OS X. The libusb does not timeout and < blocks forever. < * [r4358] src/ifdhandler.c: IFDHControl(): the (proprietary) switch < interface escape command is allowed on the Gemalto GemProx DU < * [r4356] src/ifdhandler.c: IFDHControl(): the (proprietary) get < firmware version escape command is allowed with a Gemalto reader < * [r4355] src/ccid.h: add GET_VENDOR macro <