/[pcsclite]/trunk/Drivers/ccid/src/ifdhandler.c
ViewVC logotype

Log of /trunk/Drivers/ccid/src/ifdhandler.c

Parent Directory Parent Directory | Revision Log Revision Log


Links to HEAD: (view) (download) (annotate)
Sticky Revision:

Revision 1155 - (view) (download) (annotate) - [select for diffs]
Modified Fri Aug 6 11:30:33 2004 UTC (8 years, 10 months ago) by rousseau
File length: 26587 byte(s)
Diff to previous 1154 , to selected 880
use a much cleaner way to check presence of a contactless card with a
multislot SCR331-DI reader

Revision 1154 - (view) (download) (annotate) - [select for diffs]
Modified Fri Aug 6 11:25:46 2004 UTC (8 years, 10 months ago) by rousseau
File length: 26714 byte(s)
Diff to previous 1153 , to selected 880
IFDHICCPresence(): call get_ccid_descriptor() on reader_index instead of Lun

Revision 1153 - (view) (download) (annotate) - [select for diffs]
Modified Fri Aug 6 11:23:59 2004 UTC (8 years, 10 months ago) by rousseau
File length: 26686 byte(s)
Diff to previous 1152 , to selected 880
FDHGetCapabilities() tag TAG_IFD_SLOT_THREAD_SAFE: Can NOT talk to
multiple slots at the same time (at least until it is fully validated)

Revision 1152 - (view) (download) (annotate) - [select for diffs]
Modified Fri Aug 6 11:21:56 2004 UTC (8 years, 10 months ago) by rousseau
File length: 26682 byte(s)
Diff to previous 1146 , to selected 880
IFDHCreateChannel()/IFDHCreateChannelByName(): if the OpenPort() call
fails we ReleaseReaderIndex() and do not call ccid_open_hack()

Revision 1146 - (view) (download) (annotate) - [select for diffs]
Modified Wed Aug 4 21:30:14 2004 UTC (8 years, 10 months ago) by rousseau
File length: 26508 byte(s)
Diff to previous 1107 , to selected 880
remove defaultFeatures management (was used for SCR331-DI hack)

Revision 1107 - (view) (download) (annotate) - [select for diffs]
Modified Wed Jul 28 08:36:57 2004 UTC (8 years, 10 months ago) by rousseau
File length: 26746 byte(s)
Diff to previous 1094 , to selected 880
use reader_index instead of lun as reader identification
allocate (in IFDHCreateChannel*) and release (in IFDHCloseChannel)

Revision 1094 - (view) (download) (annotate) - [select for diffs]
Modified Wed Jul 21 09:02:44 2004 UTC (8 years, 10 months ago) by rousseau
File length: 25891 byte(s)
Diff to previous 1085 , to selected 880
hack to support the SCR331-DI contactless interface

Revision 1085 - (view) (download) (annotate) - [select for diffs]
Modified Mon Jul 19 14:58:16 2004 UTC (8 years, 11 months ago) by rousseau
File length: 24507 byte(s)
Diff to previous 1084 , to selected 880
update IFDHControl() prototype to replace LPVOID by PUCHAR (prototype
changed in pcsc-lite-1.2.9-beta5)

Revision 1084 - (view) (download) (annotate) - [select for diffs]
Modified Mon Jul 19 13:32:26 2004 UTC (8 years, 11 months ago) by rousseau
File length: 24508 byte(s)
Diff to previous 1078 , to selected 880
BUG: I forgot to initialise the t1.lun field. It failed to work with
more than one readers and a T=1 card in a TPDU reader.

Revision 1078 - (view) (download) (annotate) - [select for diffs]
Modified Fri Jul 16 07:06:14 2004 UTC (8 years, 11 months ago) by rousseau
File length: 24503 byte(s)
Diff to previous 1077 , to selected 880
init_driver(): use base 0 instead of 16 in strtoul() so that you can
express the decimal value 15 as: 15 (decimal), 0xF (hex) or 017 (octal)

Revision 1077 - (view) (download) (annotate) - [select for diffs]
Modified Fri Jul 16 06:53:25 2004 UTC (8 years, 11 months ago) by rousseau
File length: 24499 byte(s)
Diff to previous 1059 , to selected 880
rename PCSCLITE_MAX_READERS in CCID_DRIVER_MAX_READERS

This value is not defined by pcsc-lite but is internal to the CCID
driver. By default pcsc-lite supports the same number of readers (16).

Revision 1059 - (view) (download) (annotate) - [select for diffs]
Modified Fri Jul 9 14:08:28 2004 UTC (8 years, 11 months ago) by rousseau
File length: 24493 byte(s)
Diff to previous 1058 , to selected 880
explicitely cast the returned value as (void) if we don't use it

Revision 1058 - (view) (download) (annotate) - [select for diffs]
Modified Fri Jul 9 14:06:58 2004 UTC (8 years, 11 months ago) by rousseau
File length: 24481 byte(s)
Diff to previous 1053 , to selected 880
IFDHSetProtocolParameters(): test the return value of SetParameters()

Revision 1053 - (view) (download) (annotate) - [select for diffs]
Modified Fri Jul 9 13:21:44 2004 UTC (8 years, 11 months ago) by rousseau
File length: 24373 byte(s)
Diff to previous 1043 , to selected 880
mark unused arguments as /*@unused@*/ for splint

Revision 1043 - (view) (download) (annotate) - [select for diffs]
Modified Fri Jul 9 07:10:17 2004 UTC (8 years, 11 months ago) by rousseau
File length: 24334 byte(s)
Diff to previous 999 , to selected 880
lun is (unsigned int) instead of (int)

Avoid a warning by splint in #define LunToReaderIndex(Lun) (Lun>>16)
Left operand of >> may be negative (int): lun >> 16

Revision 999 - (view) (download) (annotate) - [select for diffs]
Modified Wed Jun 30 13:42:23 2004 UTC (8 years, 11 months ago) by rousseau
File length: 24325 byte(s)
Diff to previous 998 , to selected 880
if DEBUG_LEVEL_PERIODIC is not set we temporaily remove DEBUG_LEVEL_COMM in
IFDHICCPresence() to avoid having the low level debug every time pcscd
test the card presence

Revision 998 - (view) (download) (annotate) - [select for diffs]
Modified Wed Jun 30 13:40:12 2004 UTC (8 years, 11 months ago) by rousseau
File length: 24006 byte(s)
Diff to previous 900 , to selected 880
- removed CardUp() and CardDown()
- all the reader initialisation/negotiation is now done in
  IFDHSetProtocolParameters() (that's why you need pcsc-lite-1.2.9beta3)

Revision 900 - (view) (download) (annotate) - [select for diffs]
Modified Tue May 25 14:46:02 2004 UTC (9 years ago) by rousseau
File length: 21276 byte(s)
Diff to previous 892 , to selected 880
add support for SCardGetAttrib(.., IOCTL_SMARTCARD_VENDOR_VERIFY_PIN, ..)
to know if the reader supports SCardControl(.., IOCTL_SMARTCARD_VENDOR_VERIFY_PIN, ..)

Revision 892 - (view) (download) (annotate) - [select for diffs]
Modified Mon May 24 12:58:43 2004 UTC (9 years ago) by rousseau
File length: 21097 byte(s)
Diff to previous 891 , to selected 880
recompile using gcc -pedantic and correct:
- some C++ syntax comments
- many signedness "problems"

Revision 891 - (view) (download) (annotate) - [select for diffs]
Modified Mon May 24 10:02:48 2004 UTC (9 years ago) by rousseau
File length: 21103 byte(s)
Diff to previous 882 , to selected 880
add support for Secure PIN through SCardControl() (see sample code in examples/)

Revision 882 - (view) (download) (annotate) - [select for diffs]
Modified Tue May 18 14:02:55 2004 UTC (9 years, 1 month ago) by rousseau
File length: 20739 byte(s)
Diff to previous 880
in CardUp():SetParameters() the default TA1 is 0x11

Revision 880 - (view) (download) (annotate) - [selected]
Modified Mon May 17 14:45:44 2004 UTC (9 years, 1 month ago) by rousseau
File length: 20725 byte(s)
Diff to previous 840
- add support of IOCTL_SMARTCARD_VENDOR_IFD_EXCHANGE in IFDHControl()
- read ifdDriverOptions from Info.plist to limit the use of
  IOCTL_SMARTCARD_VENDOR_IFD_EXCHANGE (idea from Peter Williams)

Revision 840 - (view) (download) (annotate) - [select for diffs]
Modified Mon May 10 07:52:57 2004 UTC (9 years, 1 month ago) by rousseau
File length: 19856 byte(s)
Diff to previous 807 , to selected 880
in IFDHPowerICC() IFD_POWER_DOWN is just power down without a power up.
Changed to be compliant with IFD Handler specifications.

Revision 807 - (view) (download) (annotate) - [select for diffs]
Modified Mon Apr 19 16:18:43 2004 UTC (9 years, 2 months ago) by rousseau
File length: 19846 byte(s)
Diff to previous 804 , to selected 880
reset ATR string (length = 0) when the card is powered down or not present

Revision 804 - (view) (download) (annotate) - [select for diffs]
Modified Mon Apr 19 16:09:24 2004 UTC (9 years, 2 months ago) by rousseau
File length: 19444 byte(s)
Diff to previous 795 , to selected 880
add SCARD_ATTR_ATR_STRING in addition to TAG_IFD_ATR in IFDHGetCapabilities()

Revision 795 - (view) (download) (annotate) - [select for diffs]
Modified Fri Apr 16 15:22:02 2004 UTC (9 years, 2 months ago) by rousseau
File length: 19390 byte(s)
Diff to previous 773 , to selected 880
new IFDHControl() API

Revision 773 - (view) (download) (annotate) - [select for diffs]
Modified Tue Apr 6 13:14:02 2004 UTC (9 years, 2 months ago) by rousseau
File length: 19307 byte(s)
Diff to previous 770 , to selected 880
during the first IFDHCreateChannel*() init_debug() is called to read the
value of ifdLogLevel from the Info.plist

Revision 770 - (view) (download) (annotate) - [select for diffs]
Modified Tue Apr 6 08:59:26 2004 UTC (9 years, 2 months ago) by rousseau
File length: 18499 byte(s)
Diff to previous 769 , to selected 880
do not return before pthread_mutex_unlock() in IFDHCreateChannelByName()

Revision 769 - (view) (download) (annotate) - [select for diffs]
Modified Tue Apr 6 08:53:05 2004 UTC (9 years, 2 months ago) by rousseau
File length: 18436 byte(s)
Diff to previous 768 , to selected 880
also call ccid_open_hack() in IFDHCreateChannelByName()

Revision 768 - (view) (download) (annotate) - [select for diffs]
Modified Tue Apr 6 08:51:34 2004 UTC (9 years, 2 months ago) by rousseau
File length: 18356 byte(s)
Diff to previous 766 , to selected 880
T=1 context is initialized in CardUp(), not in IFDHCreateChannel()

Revision 766 - (view) (download) (annotate) - [select for diffs]
Modified Tue Apr 6 06:52:34 2004 UTC (9 years, 2 months ago) by rousseau
File length: 18436 byte(s)
Diff to previous 716 , to selected 880
revert to nearly previous version.
- IFD_POWER_DOWN is power down and power up (cold reset)
- IFD_RESET is power up (warm reset)
- IFD_POWER_UP is power up

Revision 716 - (view) (download) (annotate) - [select for diffs]
Modified Thu Mar 18 10:35:53 2004 UTC (9 years, 3 months ago) by rousseau
File length: 18236 byte(s)
Diff to previous 696 , to selected 880
Reset action is power off and power on, not just power on

Revision 696 - (view) (download) (annotate) - [select for diffs]
Modified Thu Feb 12 16:11:45 2004 UTC (9 years, 4 months ago) by rousseau
File length: 18335 byte(s)
Diff to previous 692 , to selected 880
huge rework of CardUp()

Revision 692 - (view) (download) (annotate) - [select for diffs]
Modified Wed Feb 11 14:36:59 2004 UTC (9 years, 4 months ago) by rousseau
File length: 16916 byte(s)
Diff to previous 687 , to selected 880
Perform PPS and IFSD only if the reader does not do it automatically

Revision 687 - (view) (download) (annotate) - [select for diffs]
Modified Wed Feb 11 10:12:00 2004 UTC (9 years, 4 months ago) by rousseau
File length: 16708 byte(s)
Diff to previous 673 , to selected 880
use Protocol_T1_Negociate_IFSD() in CardUp()

Revision 673 - (view) (download) (annotate) - [select for diffs]
Modified Tue Feb 3 15:44:52 2004 UTC (9 years, 4 months ago) by rousseau
File length: 16628 byte(s)
Diff to previous 663 , to selected 880
add CardUp() and CardDown() for PowerOn and PowerOff actions

Revision 663 - (view) (download) (annotate) - [select for diffs]
Modified Thu Jan 29 13:37:35 2004 UTC (9 years, 4 months ago) by rousseau
File length: 14863 byte(s)
Diff to previous 649 , to selected 880
removed useless function name in debug messages since we use __FUNCTION__

Revision 649 - (view) (download) (annotate) - [select for diffs]
Modified Tue Jan 27 13:32:55 2004 UTC (9 years, 4 months ago) by rousseau
File length: 14900 byte(s)
Diff to previous 616 , to selected 880
add support of IFDHCreateChannelByName

Revision 616 - (view) (download) (annotate) - [select for diffs]
Modified Thu Jan 15 14:10:13 2004 UTC (9 years, 5 months ago) by rousseau
File length: 14175 byte(s)
Diff to previous 612 , to selected 880
add support of T=1 in TPDU mode

Revision 612 - (view) (download) (annotate) - [select for diffs]
Modified Thu Jan 15 13:45:37 2004 UTC (9 years, 5 months ago) by rousseau
File length: 14020 byte(s)
Diff to previous 611 , to selected 880
call ccid_open_hack() in IFDHCreateChannel() instead of in each OpenPort()

Revision 611 - (view) (download) (annotate) - [select for diffs]
Modified Thu Jan 15 13:41:01 2004 UTC (9 years, 5 months ago) by rousseau
File length: 13940 byte(s)
Diff to previous 609 , to selected 880
use an (int *) instead of a PDWORD for rx_length argument

Revision 609 - (view) (download) (annotate) - [select for diffs]
Modified Thu Jan 15 08:34:20 2004 UTC (9 years, 5 months ago) by rousseau
File length: 13966 byte(s)
Diff to previous 608 , to selected 880
add get_ccid_slot() function

Revision 608 - (view) (download) (annotate) - [select for diffs]
Modified Thu Jan 15 08:30:31 2004 UTC (9 years, 5 months ago) by rousseau
File length: 13864 byte(s)
Diff to previous 569 , to selected 880
remove function name from debug message since __FUNCTION__ is now used in
DEBUG_* macro definition

Revision 569 - (view) (download) (annotate) - [select for diffs]
Modified Fri Dec 12 09:38:25 2003 UTC (9 years, 6 months ago) by rousseau
File length: 14124 byte(s)
Diff to previous 568 , to selected 880
return IFD_NOT_SUPPORTED instead of IFD_SUCCESS in functions doing
nothing (yet) (IFDHSetCapabilities, IFDHSetProtocolParameters,
IFDHControl);

Revision 568 - (view) (download) (annotate) - [select for diffs]
Modified Thu Dec 11 21:19:46 2003 UTC (9 years, 6 months ago) by rousseau
File length: 14105 byte(s)
Diff to previous 563 , to selected 880
set the result buffer length to 0 in IFDHControl()

Revision 563 - (view) (download) (annotate) - [select for diffs]
Modified Tue Nov 25 22:55:58 2003 UTC (9 years, 6 months ago) by rousseau
File length: 14020 byte(s)
Diff to previous 463 , to selected 880
use a updated version of acx_pthread.m4 needed for FreeBSD

Revision 463 - (view) (download) (annotate) - [select for diffs]
Modified Mon Sep 22 14:25:19 2003 UTC (9 years, 8 months ago) by rousseau
File length: 14006 byte(s)
Diff to previous 410 , to selected 880
add support of thread safe (APDU multiplexing on different readers)

Revision 410 - (view) (download) (annotate) - [select for diffs]
Modified Wed Sep 10 09:12:20 2003 UTC (9 years, 9 months ago) by rousseau
File length: 13423 byte(s)
Diff to previous 269 , to selected 880
use OpenPort instead of OpenUSB. move the complex TPDU management in
commands.c (and use it only if reader does not support APDU mode)

Revision 269 - (view) (download) (annotate) - [select for diffs]
Added Tue Aug 12 12:40:23 2003 UTC (9 years, 10 months ago) by rousseau
File length: 16194 byte(s)
Diff to selected 880
Initial revision

This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.

  Diffs between and
  Type of Diff should be a

  ViewVC Help
Powered by ViewVC 1.1.5