ACS CCID PC/SC Driver for Linux/Mac OS X
Advanced Card Systems Ltd.



Contents
----------------

   1. Release Notes
   2. Installation
   3. History
   4. File Contents
   5. Limitations
   6. Support
   7. Authors
   8. Copyright
   9. License



1. Release Notes
----------------

Version: 1.0.2
Release Date: 16/3/2011

Supported Readers
ACR38U-CCID
ACR3801
ACR83U
ACR85 PINPad Reader
ACR88U
ACR100-CCID
ACR100 ICC Reader
ACR101 ICC Reader
ACR102 ICC Reader
ACR122U
ACR122T
ACR122U-SAM
ACR1222 Dual Reader
ACR1222 1SAM Dual Reader
ACR1222L 3S CL Reader
ACR125 nPA plus
ACR128U
ACR1281 CL Reader (qPBOC)
ACR1281 Dual Reader (qPBOC)
ACR1281 PICC Reader (BSI)
ACR1281 Dual Reader (BSI)
APG8201

Operating Systems
Linux
Mac OS X 10.5/10.6



2. Installation
---------------

1. Login as root.

2. Enter the following commands to unpack the driver source code.

# tar -jxvf acsccid-1.0.2.tar.bz2
# cd acsccid-1.0.2

3. Enter the following commands to install the driver. If you want to use udev,
   please enter "./configure --enable-udev". For more information, please refer
   to the file "acsccid-1.0.2/INSTALL".

# ./configure
# make
# make install

4. To build the driver in Mac OS X, please install development tools from
   Apple and install libusb-0.1. Enter the following commands to install the
   driver.

# ./MacOSX/configure
# make
# make install



3. History
----------

v1.0.0 (26/8/2009)
1. New release
2. Based on ccid-1.3.11 (http://pcsclite.alioth.debian.org/ccid.html).
3. Change CmdPowerOn() read timeout in IFDHPowerICC() from 60 seconds to 4
   seconds.

v1.0.0 (18/9/2009)
1. Import Mac OS X 10.5 configure script from ccid-1.3.11.
2. Update AUTHORS and COPYING files.
3. Disable interrupt read in ccid_open_hack_pre() for all readers. It will cause
   the driver hang in ACR88U and ACR128U readers on Mac OS X.
4. There is a pcscd problem supporting multi-slot readers on Mac OS X. It will
   create duplicate reader name for each slot. ACR88U and ACR128U readers are
   affected by this bug. For more information, please refer to
   http://www.opensc-project.org/sca/wiki/LeopardBugs.

v1.0.0 (14/10/2009)
1. Test the driver on Mac OS X 10.6.

v1.0.1 (9/11/2009)
1. Remove firmware version check.
2. Modify the driver to use separate thread to poll the slot ICC states from
   interrupt endpoint.
   
v1.0.2 (2/2/2010)
1. Do not use separate thread to poll the slot ICC status due to poor
   performance of libusb v0.1.12.
2. Enable polling mode automatically for ACR122U v2.06.

v1.0.2 (17/6/2010)
1. Add ACR125 nPA plus support.

v1.0.2 (22/11/2010)
1. Add ACR1281 PICC Reader (BSI) support.
2. Import Mac OS X 10.6 configure script from ccid-1.3.12.

v1.0.2 (17/12/2010)
1. Add the following readers support:
   ACR1281 Dual Reader (qPBOC)
   ACR1222 Dual Reader
   ACR1222 1SAM Dual Reader
   ACR83U
   ACR85 PINPad Reader
   APG8201
2. Secure PIN Entry (SPE) support for ACR83U requires firmware version 4500 or
   later.
3. Add SCARD_CTL_CODE(3500) support for sending CCID escape command.

v1.0.2 (28/1/2011)
1. Add the following readers support:
   ACR100 ICC Reader
   ACR101 ICC Reader
   ACR102 ICC Reader
   ACR1222L 3S CL Reader
   ACR1281 CL Reader (qPBOC)
   ACR1281 Dual Reader (BSI)
2. Fix a bug that APG8201 and ACR85 cannot receive command properly if command
   length is greater than 64 bytes.
3. Set infinite timeout in T=0, Short APDU and Extended APDU exchange.
4. Simulate ACR1281 Dual Reader (composite device) as multi-slot reader.
5. Improve performance and stability for ACR122U v2.00 - v2.04.
6. Replace acx_pthread.m4 with ax_pthread.m4 from autoconf archive.

v1.0.2 (14/2/2011)
1. Add the following driver options and these options are enabled by default:
   DRIVER_OPTION_REMOVE_PUPI_FROM_ATR
       Remove PUPI from ATR if ISO 14443-B card is detected (ACR1222).
   DRIVER_OPTION_DISABLE_PICC
       Disable PICC if ICC is inserted (ACR1222).

v1.0.2 (21/2/2011)
1. Add DRIVER_OPTION_REMOVE_PUPI_FROM_ATR and DRIVER_OPTION_DISABLE_PICC driver
   options to ACR85.
2. Simulate ACR85 as multi-slot reader. The first slot is ICC and the second
   slot is PICC.
3. Add firmware version check for ACR1222. The driver options are for ACR1222
   v401 only.

v1.0.2 (16/3/2011)
1. Fix reader hang problem by checking card status of ACR85 PICC if SW1SW2
   "63 00" is received.
2. Add ACR3801 support.



4. File Contents
----------------

.
|-- AUTHORS
|-- COPYING
|-- ChangeLog
|-- INSTALL
|-- MacOSX
|   |-- configure
|   |-- convert_reader_h.pl
|   |-- debuglog.h
|   |-- ifdhandler.h
|   |-- pcsclite.h
|   |-- reader.h.in
|   |-- winscard.h
|   `-- wintypes.h
|-- Makefile.am
|-- Makefile.in
|-- NEWS
|-- README
|-- aclocal.m4
|-- bootstrap
|-- config
|   |-- compile
|   |-- config.guess
|   |-- config.sub
|   |-- depcomp
|   |-- install-sh
|   |-- ltmain.sh
|   |-- missing
|   `-- ylwrap
|-- config.h.in
|-- configure
|-- configure.ac
|-- m4
|   |-- Makefile.am
|   |-- Makefile.in
|   `-- ax_pthread.m4
`-- src
    |-- Info.plist.src
    |-- Makefile.am
    |-- Makefile.in
    |-- ccid.c
    |-- ccid.h
    |-- ccid_ifdhandler.h
    |-- ccid_usb.c
    |-- ccid_usb.h
    |-- commands.c
    |-- commands.h
    |-- convert_version.pl
    |-- create_Info_plist.pl
    |-- debug.c
    |-- debug.h
    |-- defs.h
    |-- ifdhandler.c
    |-- misc.h
    |-- openct
    |   |-- LICENSE
    |   |-- buffer.c
    |   |-- buffer.h
    |   |-- checksum.c
    |   |-- checksum.h
    |   |-- proto-t1.c
    |   `-- proto-t1.h
    |-- parser.h
    |-- pcscd_acsccid.rules
    |-- strlcpy.c
    |-- strlcpycat.h
    |-- supported_readers.txt
    |-- tokenparser.l
    |-- towitoko
    |   |-- COPYING
    |   |-- README
    |   |-- atr.c
    |   |-- atr.h
    |   |-- defines.h
    |   |-- pps.c
    |   `-- pps.h
    |-- utils.c
    `-- utils.h



5. Limitations
--------------



6. Support
----------

In case of problem, please contact ACS through:

Web Site: http://www.acs.com.hk/
E-mail: info@acs.com.hk
Tel: +852 2796 7873
Fax: +852 2796 1286



7. Authors
----------

Advanced Card Systems Ltd. <info@acs.com.hk>
Ludovic Rousseau <ludovic.rousseau@free.fr>
Carlos Prados <cprados@yahoo.com>
Olaf Kirch <okir@suse.de>
Matthias Bruestle



8. Copyright
------------

Copyright (C) 2009-2011 Advanced Card Systems Ltd.
Copyright (C) 2003-2009 Ludovic Rousseau
Copyright (C) 2000-2001 Carlos Prados
Copyright (C) 2003 Olaf Kirch
Copyright (C) 1999-2002 Matthias Bruestle



9. License
----------

This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA
