1.4.16 - 23 March 2014, Ludovic Rousseau
- Add support of
. Crypto Stick Crypto Stick v1.4
. Hewlett Packard USB Smartcard CCID Keyboard
. IID AT90S064 CCID READER
. INSIDE Secure VaultIC 405 Smart Object
. INSIDE Secure VaultIC 441 Smart Object
. Microchip SEC1110
. Microchip SEC1210
. Watchdata W5181
- Add support of DRIVER_OPTION_DISABLE_PIN_RETRIES
The Gemalto pinpad reader sends a VERIFY command with no PIN value
in order to retreive the remaining retries from the card. Some
cards (like the OpenPGP card) do not support this.
It is now possible to disable this behavior from the Gemalto
Pinpad and Covadis Véga Alpha.
- Add support of WTX received before SW during Secure Pin Entry Verify
The Swiss health care card sends a WTX request before returning
the SW code. If the reader is in TPDU and the card is in T=1 the
driver must manage the request itself.
There were two patches to cast __FUNCTION__ to const char *; this is
apparently to work around a warning. gcc on NetBSD 6 and clang on osx
10.9 do not emit a warning with the unpatched code. Upstream doesn't
understand the patch, and I don't etiher. ok pettai@
Take maintainership.
(This update was not tested, but built fine.)
http://ludovicrousseau.blogspot.fr/2014/02/new-version-of-libccid-1415.html
1.4.15 - 14 February 2014, Ludovic Rousseau
- Add support of
. DUALi DRAGON NFC READER
. Feitian bR301
. Gemalto CR30 reader in serial communication
. Gemalto Ezio Shield Pro SC
. IIT E.Key Almaz-1C
- PIN_MODIFY_STRUCTURE & PIN_VERIFY_STRUCTURE: Fix calculation of
the command length after pcsc-lite 1.8.9 (October 2013) changed
the PCSC/reader.h header
- Add specific PIN min (0) & max (25) sizes for SmartTerminal
ST-2xxx
- Do not get the data rates if bNumDataRatesSupported = 0
- Support Gemalto features for pinpad readers MinimumPINSize,
MaximumPINSize and bEntryValidationCondition are fetched from the
reader firmware
- disable (broken) pinpad for Fujitsu SmartCase KB SCR eSIG
- examples/scardcontrol.c:
. Parse codes returned by a pinpad (as SW1/SW2)
Known codes for now are:
0x9000: Success
0x6400: Timeout
0x6401: Cancelled by user
0x6402: PIN mismatch
0x6403: Too short or too long PIN
. Retrieve min and max PIN sizes from the driver
. Retrieve bEntryValidationCondition from the driver
- be more strict for bInterfaceClass = 255 by also checking extra_length
- some minor bugs removed
http://ludovicrousseau.blogspot.fr/2013/11/new-version-of-libccid-1414.html
1.4.14 - 25 November 2013, Ludovic Rousseau
- Add support of
. Gemalto GemCore SIM Pro firmware 2.0 (using USB)
- report FEATURE_IFD_PIN_PROPERTIES only for pinpad readers
- Generalize the management of (old) readers with bDeviceClass = 0xFF
- some minor bugs removed
http://ludovicrousseau.blogspot.fr/2013/10/new-version-of-libccid-1413.html
1.4.13 - 9 October 2013, Ludovic Rousseau
- Add support of
. Access IS ePassport Reader
. Planeta RC700-NFC CCID
- Add support of Windows value for CM_IOCTL_GET_FEATURE_REQUEST
Windows uses 0x313520 for SCARD_CTL_CODE(3400) pcsc-lite uses
0x42000D48 for SCARD_CTL_CODE(3400)
RDP aplications (like rdesktop) will convert SCardControl()
commands from a Windows application (so using 0x313520) to
pcsc-lite.
- fix multi-slot support for card movement notification (introduced
in 1.4.12)
- Mac OS X: differentiate each libccid library by the dynamic linker
using --prefix=/fake/$BUNDLE_ID
- some minor bugs removed
- Add support of
. HID OMNIKEY 5127 CK
. HID OMNIKEY 5326 DFR
. HID OMNIKEY 5427 CK
. Ingenico WITEO USB Smart Card Reader (Base and Badge)
. SecuTech SecuTech Token
- Add support of card movement notifications for multi-slot readers
- Check libusb is at least at version 1.0.8
- Get the serialconfdir value from pcsc-lite pkg config instead of
using $(DESTDIR)/$(sysconfdir)/reader.conf.d/
- Disable class driver on Mac OS X
- Update the bundle name template to include the vendor name
- some minor bugs removed
1.4.11 - 12 June 2013, Ludovic Rousseau
- Add support of
. Gemalto IDBridge CT30
. Gemalto IDBridge K30
. SCM Microsystems Inc. SCL010 Contactless Reader
. SCM Microsystems Inc. SDI011 Contactless Reader
. THRC reader
- Better management of time extension requests
- parse: better support of devices with bInterfaceClass = 0xFF
- udev rule file: Remove setting group to pcscd, remove support of
Linux kernel < 2.6.35 for auto power up management
- some minor bugs removed
1.4.10 - 16 April 2013, Ludovic Rousseau
- Add support of
. ACS APG8201 USB Reader with PID 0x8202
. GIS Ltd SmartMouse USB
. Gemalto IDBridge K3000
. Identive CLOUD 2700 F Smart Card Reader
. Identive CLOUD 2700 R Smart Card Reader
. Identive CLOUD 4500 F Dual Interface Reader
. Identive CLOUD 4510 F Contactless + SAM Reader
. Identive CLOUD 4700 F Dual Interface Reader
. Identive CLOUD 4710 F Contactless + SAM Reader
. Inside Secure AT90SCR050
. Inside Secure AT90SCR100
. Inside Secure AT90SCR200
. SCR3310-NTTCom USB SmartCard Reader
. SafeTech SafeTouch
. SpringCard H512 Series
. SpringCard H663 Series
. SpringCard NFC'Roll
. Yubico Yubikey NEO CCID
. Yubico Yubikey NEO OTP+CCID
- Add support of time extension for Escape commands
1.4.9 - 16 January 2013, Ludovic Rousseau
- Add support of
. Aktiv Rutoken PINPad In
. Aktiv Rutoken PINPad Ex
. REINER SCT cyberJack go
- Info.plist: Correctly handle reader names containing &
a) refer 'perl' in their Makefile, or
b) have a directory name of p5-*, or
c) have any dependency on any p5-* package
Like last time, where this caused no complaints.
-Add support of
. SCR3310-NTTCom USB (was removed in version 1.4.6)
. Inside Secure VaultIC 420 Smart Object
. Inside Secure VaultIC 440 Smart Object
- Wait up to 3 seconds for reader start up
- Add support of new PC/SC V2 part 10 properties:
. dwMaxAPDUDataSize
. wIdVendor
. wIdProduct
- Use helper functions from libPCSCv2part10 to parse the PC/SC v2
part 10 features
1.4.7:
-Add support of
. ACS ACR101 ICC Reader
. ACS CryptoMate64
. Alcor Micro AU9522
. Bit4id CKey4
. Bit4id cryptokey
. Bit4id iAM
. Bit4id miniLector
. Bit4id miniLector-s
. CCB eSafeLD
. Gemalto Ezio Shield Branch
. KOBIL Systems IDToken
. NXP PR533
- KOBIL Systems IDToken special cases:
. Give more time (3 seconds instead of 2) to the reader to answer
. Hack for the Kobil IDToken and Geman eID card. The German eID
card is bogus and need to be powered off before a power on
. Add Reader-Info-Commands special APDU/command
- Manufacturer command
- Product name command
- Firmware version command
- Driver version command
- Use auto suspend for CCID devices only (Closes Alioth bug
[#313445] "Do not activate USB suspend for composite devices:
keyboard")
- Fix some error management in the T=1 TPDU state machine
- some minor bugs removed
- some minor improvements added
1.4.6:
-Add support of
. Avtor SC Reader 371
. Avtor SecureToken
. DIGIPASS KEY 202
. Fujitsu SmartCase KB SCR eSIG
. Giesecke & Devrient StarSign CUT
. Inside Secure VaultIC 460 Smart Object
. Macally NFC CCID eNetPad reader
. OmniKey 6321 USB
. SCM SDI 011
. Teridian TSC12xxF
. Vasco DIGIPASS KEY 101
- Remove support of readers without a USB CCID descriptor file
. 0x08E6:0x34C1:Gemalto Ezio Shield Secure Channel
. 0x08E6:0x34C4:Gemalto Ezio Generic
. 0x04E6:0x511A:SCM SCR 3310 NTTCom
. 0x0783:0x0008:C3PO LTC32 USBv2 with keyboard support
. 0x0783:0x9002:C3PO TLTC2USB
. 0x047B:0x020B:Silitek SK-3105
- Disable SPE for HP USB CCID Smartcard Keyboard. The reader is
bogus and unsafe.
- Convert "&" in a reader name into "&" to fix a problem on Mac OS X
- Fix a problem with ICCD type A devices. We now wait for device ready
- Secure PIN Verify and PIN Modify: set the minimum timeout to 90
seconds
- Add support of wIdVendor and wIdProduct properties
- Add support of dwMaxAPDUDataSize
- Add support of Gemalto firmware features
- some minor bugs removed
1.4.5:
- Add support of Alcor Micro AU9540, Ubisys 13.56MHz RFID (CCID),
BIFIT USB-Token iBank2key, BIFIT iBank2Key, Gemalto Ezio Shield
PinPad reader, Gemalto SA .NET Dual, Precise Sense MC reader (with
fingerprint), SDS DOMINO-Key TWIN Pro
- Add support of bPPDUSupport and FEATURE_CCID_ESC_COMMAND
- SCARD_ATTR_VENDOR_NAME and SCARD_ATTR_VENDOR_IFD_VERSION are not
the vendor name and version of the driver but of the IFD:
InterFace Device i.e. the smart card reader. We then return the
USB iManufacturer string as SCARD_ATTR_VENDOR_NAME and USB
bcdDevice as SCARD_ATTR_VENDOR_IFD_VERSION
- reduce binary size bu removing unused features from simclist
- Fix some warnings reported bu Coverity
1.4.4:
- Add support of Gemalto Ezio Shield, Gemalto Ezio CB+, Gemalto Ezio
Shield Secure Channel, Gemalto Ezio Shield PinPad and Gemalto Ezio
Generic
- Activate USB automatic power suspend. The Linux kernel should
power off the reader automatically if it is not used (pcscd is not
running).
- Add support of TLV Properties wLcdMaxCharacters and wLcdMaxLines.
They just duplicate wLcdLayout
- some minor bugs removed
1.4.3:
- Add support of Neowave Weneo, Vasco DIGIPASS 920, SCM SCL011,
Feitian ePass2003 readers
- use :libudev: instead of :libhal: naming scheme.
- Do not install RSA_SecurID_getpasswd and Kobil_mIDentity_switch
and the associated documentation.
- the Secure Pin Entry of the HP USB Smart Card Keyboard is bogus so
disable it
- some minor bugs removed
1.4.2:
- Add support of Feitian SCR310 reader (also known as 301v2), ACS
APG8201 PINhandy 1, Oberthur ID-ONE TOKEN SLIM v2, new Neowave
Weneo token, Vasco DIGIPASS KEY 860, Vasco DIGIPASS KEY 200,
Xiring Leo v2, Xiring MyLeo, Aktiv Rutoken lite readers
- Add back support of "bogus" Oz776, REINER SCT and BLUDRIVE II
- Ease detection of OpenCT by pcsc-lite
- disable use of interrupt card events for multi slots readers (the
algorithm is bogus and can't be used)
- fix minor problems detected by the clang tool
- some minor bugs removed
1.4.1:
- Add support of Gemalto Smart Guardian (SG CCID), ReinerSCT
cyberJack RFID basis, Akasa AK-CR-03, BZH uKeyCI800-K18, Free
Software Initiative of Japan Gnuk token readers
- Remove O2 Micro Oz776 and Blutronics Bludrive II CCID since they
are no more supported since version 1.4.0
- 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.
- Need pcsc-lite 1.6.5 for TAG_IFD_POLLING_THREAD_WITH_TIMEOUT
- 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.
- 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.
See http://ludovicrousseau.blogspot.com/2010/09/pcscd-auto-start.html
- some minor bugs removed
1.4.0:
- add support of Kingtrust Multi-Reader, Dectel CI692, Todos CX00,
C3PO LTC36, ACS AET65, Broadcom 5880, Tianyu Smart Card Reader,
Gemalto Hybrid Smartcard Reader
- Add support of the SCM SDI 010 again. At least the contact
interface can be used.
- Use libusb-1.0 instead of libusb-0.1
- add support of TAG_IFD_STOP_POLLING_THREAD and use of the
asynchronous libusb API to be able to stop a transfer.
- Request pcsc-lite 1.6.2 minimum (instead of 1.6.0) to have
TAG_IFD_STOP_POLLING_THREAD defined
- The O2MICRO OZ776 patch (for OZ776, OZ776_7772, REINER_SCT and
BLUDRIVEII_CCID) is no more supported with libusb-1.0
- correctly get the IFSC from the ATR (ATR parsing was not always
correct)
- some minor bugs removed
1.3.11 - 28 July 2009, Ludovic Rousseau
- add support of Raritan D2CIM-DVUSB VM/CCID, Feitian SCR301,
Softforum XecureHSM, 2 Neowave Weneo tokens, Synnix STD200, Aktiv
Rutoken ECP, Alcor Micro SCR001, ATMEL AT91SC192192CT-USB,
Panasonic USB Smart Card Reader 7A-Smart, Gemalto GemProx DU and SU
- remove support of Reiner-SCT cyberJack pinpad(a) on request of
Reiner-SCT. You should user the Reiner-SCT driver instead
- define CFBundleName to CCIDCLASSDRIVER so that non class drivers
have a higher priority. Used by pcsc-lite 1.5.5 and up.
Add a --disable-class configure option so that the Info.plist does
not define a Class driver. Default is class driver.
- do not power up a card with a voltage not supported by the reader
- add support of PIN_PROPERTIES_STRUCTURE structure and
FEATURE_IFD_PIN_PROPERTIES
- adds support of FEATURE_MCT_READERDIRECT. Only the Kobil TriB@nk
reader supports this feature for now. This is used for the Secoder
functionality in connected mode.
- add support of a composite device. No change needed with libhal.
use --enable-composite-as-multislot on Mac OS X since libhal is
not available on Mac OS X or with libusb on Linux
- some minor bugs removed
This changes the buildlink3.mk files to use an include guard for the
recursive include. The use of BUILDLINK_DEPTH, BUILDLINK_DEPENDS,
BUILDLINK_PACKAGES and BUILDLINK_ORDER is handled by a single new
variable BUILDLINK_TREE. Each buildlink3.mk file adds a pair of
enter/exit marker, which can be used to reconstruct the tree and
to determine first level includes. Avoiding := for large variables
(BUILDLINK_ORDER) speeds up parse time as += has linear complexity.
The include guard reduces system time by avoiding reading files over and
over again. For complex packages this reduces both %user and %sys time to
half of the former time.
1.3.10:
- add support for MSI StarReader SMART, Noname reader (from
Omnikey), Xiring Xi Sign PKI, Realtek 43 in 1 + Sim + Smart Card
Reader, Atmel AT98SC032CT, Aktiv Rutoken Magistra, TianYu CCID
SmartKey, Precise Biometrics 200 MC and 250 MC
- add a patch to support the bogus OpenPGP card (on board key
generation sometimes timed out)
- disable support of the contactless part of SDI010 and SCR331DI
(this code was reverse engineered and hard to maintain)
- some minor bugs removed
1.3.9:
- add support for Aladdin eToken PRO USB 72K Java, Cherry
SmartTerminal ST-1200USB, Atmel AT91SO, SpringCard Prox'N'Roll,
CSB6 Basic, EasyFinger Ultimate, CSB6 Ultimate, EasyFinger
Standard, CrazyWriter, CSB6 Secure, KONA USB SmartCard, HP MFP
Smart Card Reader, ACS ACR122U PICC, Gemalto PDT, VMware Virtual
USB CCID
- MacOSX/configure: do not overwrite PCSC_CFLAGS, PCSC_LIBS,
LIBUSB_CFLAGS and LIBUSB_LIBS if already defined by the user
- by default, link statically against libusb on Mac OS X
- IFDHPowerICC(): use a very long timeout for PowerUp since the card
can be very slow to send the full ATR (up to 30 seconds at 4 MHz)
- SecurePINVerify(): correct a bug when using a Case 1 APDU and a
SCM SPR532 reader
- log the reader name instead of just the pcscd Lun
- some minor bugs removed