use reader_index instead of lun as reader identification
allocate (in IFDHCreateChannel*) and release (in IFDHCloseChannel)
78 lines of code changed in 1 file:
use reader_index instead of lun as reader identification
188 lines of code changed in 9 files:
use a more complex Lun -> reader transformation
(Lun>>16) is not usable for multi-slots readers
39 lines of code changed in 2 files:
this code fails EMV test 1771-4 (should be a residue)
8 lines of code changed in 1 file:
- debug some cases
- add ISO 7816-3 rule number in comments
48 lines of code changed in 1 file:
initialise ccid.defaultFeatures field
2 lines of code changed in 2 files:
use pkg-config to test the release version of pcsc-lite
7 lines of code changed in 1 file:
version 0.9.2
1 lines of code changed in 1 file:
hack to support the SCR331-DI contactless interface
48 lines of code changed in 1 file:
ccid_open_hack(): detect and activate the contactless interface of the
SCR331-DI
30 lines of code changed in 1 file:
use bCurrentSlotIndex as the slot number in the CCID commands (instead of 0)
7 lines of code changed in 1 file:
initialise bMaxSlotIndex and ccid.bCurrentSlotIndex fields
4 lines of code changed in 2 files:
add defaultFeatures field for multislot readers with different
dwFeatures for each slot.
6 lines of code changed in 1 file:
add SCR331DI identification
1 lines of code changed in 1 file:
add bMaxSlotIndex and bCurrentSlotIndex fields to support multislot
readers (one USB device with two or more card readers)
10 lines of code changed in 1 file:
remove "|| sent_length" in "if (retries == 0 || sent_length)" since it
is an OpenCT code that should not be needed with the new automata.
1 lines of code changed in 1 file:
update the copyright, add my name to reflect the same change in OpenCT
3 lines of code changed in 1 file:
update IFDHControl() prototype to replace LPVOID by PUCHAR (prototype
changed in pcsc-lite-1.2.9-beta5)
2 lines of code changed in 1 file:
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.
5 lines of code changed in 3 files:
in resync: we set retries = 1 since when we return in the loop we have
retries--;
Without this retries goes negative and the test 'if (retries == 0)' will
not become true again before a looooong time.
1 lines of code changed in 1 file:
OpenUSBByName(): 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).
It is not really needed since the reader descriptions in Info.plist are
all in hex.
2 lines of code changed in 1 file:
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)
2 lines of code changed in 1 file:
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).
13 lines of code changed in 6 files:
BUG: CmdPowerOn(): use memmove() instead of memcpy() to copy the ATR
bytes since the source end destination buffers (with a more than 10
bytes long ATR) overlaps.
Bug spotted by splint http://www.splint.org/
1 lines of code changed in 1 file:
use "uint8_t *" instead of "unsigned char *" in the prototype of
t1_state_t.checksum field.
2 lines of code changed in 1 file:
initialise pcDesiredKey to NULL instead of 0
1 lines of code changed in 1 file:
BUG in CmdXfrBlockTPDU_T1(): the t1_transceive() returned value was
stored in an unsigned int and tested if < 0 (error case). Of course the
test was never true.
5 lines of code changed in 1 file:
remove a useless break; after a goto;
0 lines of code changed in 1 file:
in t1_transceive() and t1_negociate_ifsd() dad argument is unsigned.
4 lines of code changed in 2 files:
replace "unsigned char *" by "uint8_t *" to use the exact same prototype as in
the functions definition
3 lines of code changed in 1 file:
i2dw() is not used outside commands.c so declare it static
3 lines of code changed in 2 files:
allow splint to continue parsing after use of type fd_set
2 lines of code changed in 1 file:
CmdXfrBlockTPDU_T0() and CmdXfrBlockTPDU_T1() are internal functions so
declare them static
12 lines of code changed in 2 files:
atr tables are internal only so declare them static
3 lines of code changed in 1 file:
define internal functions as static
7 lines of code changed in 1 file:
remove unused functions
0 lines of code changed in 2 files:
change "previous_block[1]" in "previous_block[PCB]"
6 lines of code changed in 1 file:
remove unused struct ifd_protocol_ops
0 lines of code changed in 1 file:
IFD_PROTOCOL_MORE -> IFD_PROTOCOL_T1_MORE
IFD_PROTOCOL_STATE -> IFD_PROTOCOL_T1_STATE
renamed to be in line with OpenCT
6 lines of code changed in 2 files:
explicitely cast the returned value as (void) if we don't use it
4 lines of code changed in 3 files:
IFDHSetProtocolParameters(): test the return value of SetParameters()
4 lines of code changed in 1 file:
ccid_parse_interface_descriptor() is now static
2 lines of code changed in 1 file:
make channel variable (unsigned int) instead of (int)
2 lines of code changed in 1 file:
include <sys/types.h> so splint can parse the file
3 lines of code changed in 1 file:
mark potentially null values as /*@null@*/ for splint
5 lines of code changed in 3 files:
mark unused arguments as /*@unused@*/ for splint
7 lines of code changed in 5 files:
include <sys/types.h> so splint can parse the file
3 lines of code changed in 1 file:
the buffer var_text[] was, in fact, used outside its declaration
1 lines of code changed in 1 file:
ReadChunk() and get_bytes() are internal use in ccid_serial.c so declare
them static
9 lines of code changed in 2 files:
lun is (unsigned int) so reader = LunToReaderIndex(lun) is also (unsigned int)
6 lines of code changed in 2 files:
OpenSerialByName(): arguments of CmdEscape() are unsigned
3 lines of code changed in 1 file:
replace "121234" by "123456" to make it more clear it is a memory reservation
for 6 characters
2 lines of code changed in 1 file:
remove a unneeded cast in (int)lun
1 lines of code changed in 1 file:
allow splint to continue parsing after use of type fd_set
2 lines of code changed in 1 file:
ReadSerial(): the unknown card movement byte is in "c" not "buffer[3]"
1 lines of code changed in 1 file:
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
79 lines of code changed in 10 files:
replace VENDOR pattern by MAGIC_VENDOR since we also have a VENDOR in
IOCTL_SMARTCARD_VENDOR_IFD_EXCHANGE and then a collision.
same change for PRODUCT and FRIENDLYNAME to be homogenous.
6 lines of code changed in 2 files:
OpenSerialByName(): perform a command (get the reader firmware) to be
sure a GemPC Twin (serial or pcmcia) reader is connected
20 lines of code changed in 1 file:
present where the files come from and what I did
7 lines of code changed in 1 file:
version 0.9.1
1 lines of code changed in 1 file:
release 0.9.1
3 lines of code changed in 1 file:
#define IFD_PARITY_ERROR
4 lines of code changed in 1 file:
release 0.9.0
44 lines of code changed in 1 file: