
	Beta preview of the PC/SC wrapper version 2.0


 o What's New

Gemplus has made some changes that were needed in the
PC/SC CardTerminal so that it can handle the long APDUs
of T=0 case 4. In addition to this feature, we also have
made some other improvements. The list of new features is :

 - automatic handling of T=0 case 4 long APDUs (as recently specified
   by the OCF TC, see RFP1 at http://www.opencard.org/work/rfp-1/rfp-1.txt),

 - implementation of the optional "PowerManagement" interface,

 - "internalReset" can now return the first or second ATR from the
   card. The ATR returned depends on the Power status of the card,

 - the Factory support both the mode of accessing to all readers
   by default (which was the case in the previous version) and a
   more fine-grained mode in which we specify the readers and their
   mode of access (can be SHARED or EXCLUSIVE) like in PC/SC,

 - add new exception messages,

 - add a public method "setISOTPDUMode" to select method of
   chaining that is full-ISO (i.e., when a card returns a 0x9000,
   the terminal sends a get responses to extract the "le" bytes
   requested inside the APDU command) or non-ISO but common (i.e.,
   when a card returns a 0x9000 to inform a good transfer of the APDU
   command then the terminal have to terminate the transaction and it
   shall return the sw1 sw2 to the user).


 o What's Missing

 - The newly developed version that allows to lock the entire
   reader (new feature of OCF1.2) is not yet available with the
   automatic handling of T=0 case 4 long APDUs feature.

 - The RCS versions (so you can switch back to a previous version
   if needed, or understand what has been done by reading the diffs)
   are not yet available.

 - I am working on an HTML README file explaining all this.


 o How to Install / Use it

In order to test this preview version, one has to:

   1) remove "reference-terminals-windows.jar" from java/jre/lib/ext/,

   2) copy "pcsc.jar" (included here) at this same place,

   3) and create an opencard.properties with for example (on one line):

OpenCard.terminals=com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminalFactory|my|GCR410|SHARED

Note that the DLL is unchanged, as are the .C/.H files.

Note also that the previous way of specifying the property, i.e.,

 OpenCard.terminals=com.ibm.opencard.terminal.pcsc10.Pcsc10CardTerminalFactory

which creates all CardTerminal objects for all known readers (from
PC/SC) now works correctly (it was not the case in a previous preview).

