2002-03-10  Ludovic Rousseau  <rousseau@ornithorynque>

	* README: release 0.6.1

	* GemPC410/gbpserial.c: changed again the serial port opening

2002-03-07  Ludovic Rousseau  <rousseau@ornithorynque>

	* README: release 0.6.0

	* GemPC410/.dependencies: removed

	* GemPC410/Makefile: clean rule: remove Makefile.bak .dependencies

	* common/Makefile: clean rule: remove tags file

	* common/ifdhandler.c: forgot a closing }

	* common/ifdhandler.c:
	Debug in IFDHSetCapabilities and IFDHICCPresence is now PERIODIC
	IFDHTransmitToICC: now manage case 1 APDU (only CLA, INS, P1, P2) as an
	outgoing APDU (CLA, INS, P1, P2, 0)

	* common/GCdebug.h: add DEBUG_PERIODIC definitions

	* common/GCCmds.c: Debug in GCCmdCardStatus is now PERIODIC

	* GemPC410/gbpserial.c:
	rewrote the serial port BAUDS setting during open()

	* GemPC430/Config.h, GemPC410/Config.h: document log levels
	add new log level: DEBUG_LEVEL_PERIODIC

2002-03-05  Ludovic Rousseau  <rousseau@ornithorynque>

	* common/GCUtils.c: replaced 2 by the equivalent constant ISO_SIZE_SW

2002-03-03  Ludovic Rousseau  <rousseau@ornithorynque>

	* README: release 0.5.10

	* GemPC410/main.c: add hexa values of max length
	add a new test (commented by default)

	* GemPC410/Makefile:
	add -f in 'ln -s' to avoid error if the link already exist

	* common/GCUtils.c:
	Correct a bug when more than 252 output bytes are expected and less than
	that are available (which is the case when the card sends an error)

	* common/GCCmds.c: add command options for IFD_CMD_ICC_POWER_UP
	disable PPS management (needed by some kinds of Cyberflex Access cards)

	* GemPC410/Makefile:
	modify install: rule to include release version number in filename,
	create symlinks, remove execution right on the .so lib

	* GemPC410/main.c: changed default serial port

2002-02-16  Ludovic Rousseau  <rousseau@ornithorynque>

	* README.410: Add a script to create the /dev/pcsc/? links

	* GemPC410/.dependencies, GemPC410/Makefile:
	change the way compilation dependencies are generated and stored

2001-12-09  Ludovic Rousseau  <rousseau@ornithorynque>

	* GemPC430/GemPC430Utils.c, GemPC410/GemPC410Utils.c, common/GCCmds.c:
	guarantee that the os_string is \0 terminated

2001-12-06  Ludovic Rousseau  <rousseau@ornithorynque>

	* GemPC410/resetGemPC410.c, GemPC410/gbpserial.c:
	use cfgetospeed()/cfsetospeed() instead of accessing directly the
	termios structure

2001-12-04  Ludovic Rousseau  <rousseau@ornithorynque>

	* create_distrib.sh:
	support direcory names containing numbers and not just digits (add a \+
	to the sed pattern matching)

2001-12-02  Ludovic Rousseau  <rousseau@ornithorynque>

	* common/ifdhandler.c: also log APDU results

	* GemPC410/gbpserial.c: changed DEBUG_COMM to DEBUG_LEVEL_COMM

2001-12-01  Ludovic Rousseau  <rousseau@ornithorynque>

	* GemPC430/Config.h:
	revert to just "#define foo" instead of "#define foo 1"

	* GemPC430/GemPC430Utils.c, GemPC410/GemPC410Utils.c:
	avoid a non NULL terminated string on the GemCore version string

2001-11-30  Ludovic Rousseau  <rousseau@ornithorynque>

	* README: release 0.5.9

	* MANIFEST: add ProjectBuilder folder for MacOS X

	* MacOSXbuild/ifd-GemPC430/build/intermediates/ifd-GemPC430.pbxindex/strings.pbxstrings/control, MacOSXbuild/ifd-GemPC430/build/intermediates/ifd-GemPC430.pbxindex/strings.pbxstrings/strings, MacOSXbuild/ifd-GemPC430/build/intermediates/ifd-GemPC430.pbxindex/categories.pbxbtree, MacOSXbuild/ifd-GemPC430/build/intermediates/ifd-GemPC430.pbxindex/decls.pbxbtree, MacOSXbuild/ifd-GemPC430/build/intermediates/ifd-GemPC430.pbxindex/files.pbxbtree, MacOSXbuild/ifd-GemPC430/build/intermediates/ifd-GemPC430.pbxindex/imports.pbxbtree, MacOSXbuild/ifd-GemPC430/build/intermediates/ifd-GemPC430.pbxindex/pbxindex.header, MacOSXbuild/ifd-GemPC430/build/intermediates/ifd-GemPC430.pbxindex/protocols.pbxbtree, MacOSXbuild/ifd-GemPC430/build/intermediates/ifd-GemPC430.pbxindex/refs.pbxbtree, MacOSXbuild/ifd-GemPC430/build/intermediates/ifd-GemPC430.indexed-precomps:
	added ProjectBuilder folder for MacOS X

	* common/GCUtils.c: change an IFD_SUCCESS to STATUS_SUCCESS

	* GemPC430/usbserial_mosx.c: add #include "GemCore.h"

2001-11-27  Ludovic Rousseau  <rousseau@ornithorynque>

	* README: release 0.5.8

	* create_distrib.sh: do not exclude create_distrib.sh
	remove temporary directory at exit (including by Ctrl-C)

	* MANIFEST: include create_distrib.sh

	* create_distrib.sh:
	correct first line to be #!/bin/bash instead of #/bin/sh

	* MANIFEST, README:
	removed GemPC430/main.c since the file does not exist anymore

	* GemPC410/GCGBPTransport.h: unsued and then deleted

	* create_distrib.sh:
	add -p to mkdir to also create parent directory if it does not exist

	* MANIFEST: removed deleted files

	* README: release 0.5.7

	* GemPC430/ifd-GemPC430.pbproj/giraud.pbxuser, GemPC430/ifd-GemPC430.pbproj/project.pbxproj, GemPC430/English.lproj/InfoPlist.strings:
	Useless file (not distributed in the archive)

	* common/GCUtils.c:
	change return test from IFD_SUCCESS to STATUS_SUCCESS

	* GemPC410/Makefile: removed automatically generated depends lines

	* GemPC430/usblinux.c:
	closedir() only if the device is found and usable (write access)
	the code crashed with two USB readers

	* GemPC410/main.c, GemPC410/Makefile:
	Implement ISO 7816 Case 2, 3 and 4 with full length tests

	* GemPC410/main.c:
	add a pcsc_error() function instead of code duplication
	add ReaderTest (Java test applet) APDU for ISO 7816 Case 1

	* GemPC410/resetGemPC410.c: print more error messages

	* GemPC410/gbpserial.c: "OpenGBP" instead of "OpenUSB"
	print error message in case of tcgetattr() fails

	* common/GCUtils.c:
	add support for IFD_ICC_NOT_PRESENT GemCore error status

2001-11-24  Ludovic Rousseau  <rousseau@ornithorynque>

	* GemPC410/gbpserial.c: prepare to support multi serial reader

	* GemPC430/usbserial_mosx.c:
	remove \n in log messages and change %08x to 0x%08X

	* GemPC430/usbserial_mosx.c: use TRUE & FALSE instead of 1 & 0

	* GemPC430/usbserial_linux.c: use USB_TIMEOUT #define instead of 10000

	* GemPC430/usbserial_linux.c: prepare support for multi USB readers

	* common/GCdebug.h: add DEBUG_COMM3()

	* GemPC410/gbpserial.c:
	do not limit to 4 readers anymore (accept channel >= 4)

2001-11-23  Ludovic Rousseau  <rousseau@ornithorynque>

	* common/GCCmds.c: add #include <string.h>

2001-11-22  Ludovic Rousseau  <rousseau@ornithorynque>

	* GemPC410/gbpserial.c: removed $Log$

	* GemPC410/gbpserial.c, GemPC410/gbpserial.h, GemPC410/GCGBPTransport.c:
	differentiate return values of gbpserial.c regarding GBP errors.

	* GemPC410/gbpserial.c:
	use explain_gbp() to log a descriptive GBP level error message

	* MANIFEST: add README.410

	* common/Makefile: use OBJS= to avoid repetitions

	* README, README.410: README.410 is specific to libGemPC410.so

	* GemPC410/GemPC410Utils.c:
	log "OS string" at CRITICAL level to always have it the logs

	* GemPC410/Makefile:
	do not compile directly files in common/ but use 'make -C ../common'
	(avoid '../common/[...]' in log messages)

	* GemPC430/Makefile:
	do not compile directly files in common/ but use "make -C ../common"
	(avoid "../common/[...]" in log messages)

	* GemPC430/GemPC430Utils.c:
	log "OS string" at CRITICAL level to always have it the logs

	* GemPC430/TODO.txt: done:
	 - re-organise sources of ifdhandler.c
	 - modify ifdhandler.c from GemPC430 to GemPC
	 - use a more elegant mechanism for log_function

	* common/ifdhandler.c: Source file reindentation

	* common/ifdhandler.c: Add APDU logging

	* GemPC430/GemPC430Utils.c: Get and print the GemCore version

	* GemPC410/GemPC410Utils.c: reindent

	* GemPC430/usblinux.c:
	Print USB device info in 0x%04X format instead of %d

	* GemPC430/usblinux.c:
	Open /proc/bus/usb/00x/00y in read only mode to find the good device.
	When identified the device is re-opened read/write.

	* GemPC430/usblinux.c: use DEBUG_CRITICAL3 to be more informative

	* common/GCdebug.h: added support for DEBUG_CRITICAL3()

2001-11-15  Ludovic Rousseau  <rousseau@ornithorynque>

	* README: release 0.5.6

	* common/pcscdefines.h: define type status_t

	* common/ifdhandler.c: add argument &length to GCCmdCardStatus

	* common/GemCore.h: define type gcore_t

	* common/GCUtils.h:
	change return values type from RESPONSECODE to ifd_t

	* common/GCUtils.c: reindentation
	change return value types from RESPONSECODE to ifd_t
	correct return value of functions called

	* common/GCTransport.h:
	change return values type from RESPONSECODE to status_t

	* common/GCCmds.h: change return values type from RESPONSECODE to ifd_t

	* common/GCCmds.c:
	migration of GCCmdConfigureSIOLine() to GCMakeCommand()

	* common/GCCmds.c: change return values type from RESPONSECODE to ifd_t
	complete migration from GCSendCommand() to GCMakeCommand()

	* GemPC410/resetGemPC410.c: small typo

	* GemPC410/main.c: add IFDHTransmitToICC test
	print return values (SW)

	* GemPC410/gbpserial.c:
	removed GCCmdGetOSVersion() and GCCmdSetMode() (moved to GemPC410Utils.c)
	add explain_gbp() (only used for GBP debug)

	* GemPC410/TODO: add "create /dev/pcsc/[1-4] at module installation"

	* GemPC410/Makefile: add -D_REENTRANT compilation flag
	add strip --strip-unneeded on the library

	* GemPC410/GemPC410Utils.c:
	add GCCmdGetOSVersion() call. result not yet checked.

	* GemPC410/GCGBPTransport.c: change return value type from to status_t

	* GemPC430/main.c: removed and use ../GemPC410/main.c instead

	* GemPC430/usbserial_linux.c, GemPC430/usbserial_mosx.c:
	change return value types from to status_t

	* GemPC430/usbserial_linux.c, GemPC430/usbserial.h:
	change return value types from RESPONSECODE to gcore_t

	* GemPC430/usblinux.c:
	print the error message instead of the filename when open fail

	* GemPC430/Makefile:
	use main.c from ../GemPC410/ to avoid code duplication

	* GemPC430/GemPC430Utils.h, GemPC430/GemPC430Utils.c:
	OpenGemPC430() CloseGemPC430(): change return value type from RESPONSECODE to ifd_t

	* GemPC430/GCUSBTransport.c:
	change return value type from RESPONSECODE to status_t

2001-11-08  Ludovic Rousseau  <rousseau@ornithorynque>

	* common/GCCmds.c, common/GemCore.h:
	Added GemCore error code "Card Absent"

2001-11-07  Ludovic Rousseau  <rousseau@ornithorynque>

	* common/GCCmds.c, common/GCCmds.h, common/GCUtils.h:
	removed "All rights reserved" which is a nonsense for an Free Software

	* common/GCUtils.c: iLunCheck(): add a test (LunToReaderIndex(Lun) < 0)

	* README: release 0.5.5

	* GemPC410/GemPC410Utils.c, GemPC410/GemPC410Utils.h: new files

	* GemPC430/usbserial_linux.c:
	define USBMAX_READERS as (PCSCLITE_MAX_CHANNELS) instead of 4

	* GemPC430/usbserial_mosx.c:
	use DEBUG_XXD instead of a for (i=0;...) loop in WriteUSB() also

	* GemPC410/Makefile: added the install rule

	* MANIFEST: added common/{pcsclite.h, winscard.h, wintypes.h}

	* GemPC430/Makefile:
	remove ifd-GemPC430.bundle/Contents/Linux/libGemPC430.so in rule clean

	* GemPC430/ifd-GemPC430.bundle/Contents/Info.plist: new file

	* GemPC430/Makefile: renamed ifd-GemPC430 to libGemPC430.so

2001-11-06  Ludovic Rousseau  <rousseau@ornithorynque>

	* common/pcsclite.h, common/winscard.h, common/wintypes.h:
	new files nedded to compile the drivers without installing pcscd before.
	This solves a chicken and egg problem under Debian

	* GemPC430/GemPC430Utils.c, GemPC430/Makefile:
	removed the "," in DEBUG_CRITICAL("OpenUSB failed", );

	* GemPC410/Makefile: add GemPC410Utils.o to the list of objects

	* GemPC410/Config.h:
	change OpenGBP, CloseGBP to OpenGemPC410, CloseGemPC410

	* common/ifdhandler.c:
	changed ../GemPC410/gbpserial.h to ../GemPC410/GemPC410Utils.h

	* MANIFEST: added GemPC410/GemPC410Utils.c and GemPC410/GemPC410Utils.h

	* GemPC430/GemPC430Utils.c: changed CloseREADER_NAME to CloseUSB

	* GemPC430/GemPC430Utils.c: removed a silly #include "GemPC430Utils.c"

	* GemPC430/GemPC430Utils.c, GemPC430/GemPC430Utils.h:
	removed "All rights reserved." which is in contradiction with COPYING

	* GemPC430/usbserial.h:
	go back to xxxUSB from xxxGemPC430. This is not the good layer to patch.

	* GemPC430/GemPC430Utils.c: change OpenREADER_NAME to OpenUSB

	* GemPC430/Config.h:
	Changed back to ReadUSB and WriteUSB from a wrong patch to ReadGemPC430
	and WriteGemPC430

	* README: changed <jl.giraud@free.fr> to <jlgiraud@mac.com>

	* common/ifdhandler.c:
	renamed ../GemPC430/usbserial.h to ../GemPC430/GemPC430Utils.h

	* common/GCdebug.c: changed LOG_DEBUG to LOG_INFO in syslog()

	* common/GCUtils.c: add #include "GCTransport.h"

	* GemPC430/usbserial_mosx.c:
	use DEBUG_XXD instead of a for (i=0;...) loop

	* GemPC430/usbserial_mosx.c: Change log_fucntion() to DEBUG_xyz()

	* GemPC430/usbserial.h: add #ifndef _USBSERIAL_H_ test

	* GemPC430/GemPC430Utils.h: Added argument channel to OpenGemPC430()

	* GemPC430/usbserial.h: renamed xxUSB into xxGemPC430

	* GemPC430/GemPC430Utils.c: Added argument channel to OpenGemPC430()

	* GemPC430/Config.h: renamed xxUSB into xxGemPC430

	* common/GCCmds.c: removed GCCmdRestart() which is not used anywhere

2001-10-29  Ludovic Rousseau  <rousseau@ornithorynque>

	* GemPC430/GemPC430Utils.c: change .c into .h

	* GemPC430/Makefile, GemPC410/Makefile:
	define GEMPC in the 'make dep' rule

2001-10-28  Ludovic Rousseau  <rousseau@ornithorynque>

	* MANIFEST: renamed COPYING to COPYING.BSD or COPYING.GPL

	* GemPC430/Makefile: rm -r for ifd-GemPC430.bundle

	* common/GCUtils.c: Added a comment for iLunCheck() return value

	* common/GCUtils.c: Changed inegality check in iLunCheck()

	* README: added history and licences parts

	* common/GCCmds.c, common/GCCmds.h, common/GCdebug.c, common/GCdebug.h, common/GCTransport.h, common/GCUtils.c, common/GCUtils.h, common/GemCore.h, common/ifdhandler.c, common/ifdhandler.h, common/pcscdefines.h:
	added reference to the double licence BSD/GPL except for ifdhandler.c
	and ifdhandler.h which are written by David Corcoran and are under BSD
	only.

	* common/COPYING, common/COPYING.BSD, common/COPYING.GPL:
	renamed COPYING to COPYING.BSD and added COPYING.GPL

	* GemPC430/GemPC430Utils.c, GemPC430/GemPC430Utils.h, GemPC430/usblinux.c, GemPC430/usblinux.h, GemPC430/usbserial.h, GemPC430/usbserial_linux.c, GemPC430/usbserial_mosx.c:
	Added licence reference

	* GemPC410/CmdGemCore.c, GemPC410/CmdGemCore.h:
	removed CmdGemCore.h CmdGemCore.c (they are in common/ now)

	* GemPC410/COPYING, GemPC410/COPYING.GPL, GemPC410/GCGBPTransport.h, GemPC410/resetGemPC410.c, GemPC410/TODO:
	Add GPL text in source files

2001-10-25  Ludovic Rousseau  <rousseau@ornithorynque>

	* MANIFEST, GemPC430/Makefile, GemPC430/main.c, GemPC430/GemPC430Utils.c, GemPC430/GemPC430Utils.h, GemPC430/Config.h, GemPC430/Config.h_do_not_use_anymore, GemPC430/GCUSBTransport.h, common/COPYING, common/GCCmds.c, common/GCCmds.h, common/GCdebug.c, common/GCdebug.h, common/GCTransport.h, common/GCUtils.c, common/GCUtils.h, common/debug.c, common/debug.h, GemPC410/Config.h, common/GemCore.h, common/ifdhandler.c, common/Makefile, GemPC410/gbpserial.c, GemPC410/gbpserial.h, GemPC410/GCGBPTransport.c, GemPC410/main.c, GemPC410/Makefile, create_distrib.sh, Makefile, GemPC430/GCUSBTransport.c, GemPC430/README.Linux, GemPC430/usblinux.c, GemPC430/usbserial.h, GemPC430/usbserial_linux.c:
	*** empty log message ***

2001-10-22  Ludovic Rousseau  <rousseau@ornithorynque>

	* common/debug.c, common/debug.h, common/GemCore.h, common/ifdhandler.c, common/ifdhandler.h, common/Makefile, common/pcscdefines.h, GemPC430/Config.h_do_not_use_anymore, GemPC430/COPYING, GemPC430/English.lproj/InfoPlist.strings, GemPC430/GCUSBTransport.c, GemPC430/GCUSBTransport.h, GemPC430/ifd-GemPC430.pbproj/giraud.pbxuser, GemPC430/ifd-GemPC430.pbproj/project.pbxproj, GemPC430/Makefile, GemPC430/README.Linux, GemPC430/TODO.txt, GemPC430/usblinux.c, GemPC430/usblinux.h, GemPC430/usbserial.h, GemPC430/usbserial_linux.c, GemPC430/usbserial_mosx.c:
	Imported sources

	* common/debug.c, common/debug.h, common/GemCore.h, common/ifdhandler.c, common/ifdhandler.h, common/Makefile, common/pcscdefines.h, GemPC430/Config.h_do_not_use_anymore, GemPC430/COPYING, GemPC430/English.lproj/InfoPlist.strings, GemPC430/GCUSBTransport.c, GemPC430/GCUSBTransport.h, GemPC430/ifd-GemPC430.pbproj/giraud.pbxuser, GemPC430/ifd-GemPC430.pbproj/project.pbxproj, GemPC430/Makefile, GemPC430/README.Linux, GemPC430/TODO.txt, GemPC430/usblinux.c, GemPC430/usblinux.h, GemPC430/usbserial.h, GemPC430/usbserial_linux.c, GemPC430/usbserial_mosx.c:
	New file.

	* GemPC410/CmdGemCore.c, GemPC410/CmdGemCore.h, GemPC410/COPYING, GemPC410/gbpserial.c, GemPC410/gbpserial.h, GemPC410/GCGBPTransport.c, GemPC410/GCGBPTransport.h, GemPC410/main.c, GemPC410/Makefile, GemPC410/resetGemPC410.c, Makefile, README:
	Imported sources

	* GemPC410/CmdGemCore.c, GemPC410/CmdGemCore.h, GemPC410/COPYING, GemPC410/gbpserial.c, GemPC410/gbpserial.h, GemPC410/GCGBPTransport.c, GemPC410/GCGBPTransport.h, GemPC410/main.c, GemPC410/Makefile, GemPC410/resetGemPC410.c, Makefile, README:
	New file.

