2004-07-16  Ludovic Rousseau  <rousseau@acer>

	* ChangeLog: release 1.2.9-beta5

	* configure.in: 1.2.9-beta5

2004-07-08  Ludovic Rousseau  <rousseau@acer>

	* src/tokenfactory.c:
	TPSearchBundlesForAtr(): use "%s/%s" insead of "%s%s" when generating
	the MuscleCard bundle name on MacOSX

2004-07-06  Ludovic Rousseau  <rousseau@acer>

	* src/PCSC/wintypes.h:
	add type LPSTR (again) so that "old" drivers and applications can compile
	but mark it deprecated.

	See http://gcc.gnu.org/onlinedocs/gcc-3.1/gcc/Type-Attributes.html

	* doc/Makefile.am: 'make clean' also removes the LaTeX temporary files

	* doc/ifdhandler-3.tex:
	IFDHGetCapabilities(): document the flags SCARD_ATTR_ATR_STRING and
	IOCTL_SMARTCARD_VENDOR_VERIFY_PIN

	* src/winscard.c:
	SCardControl() (new API) can now be used with a IFDHandler v2.0 or v3.0.
	The previous code was broken and only worked with an IFDHandler v3.0
	(crashed with a v2.0).

	* src/PCSC/ifdhandler.h:
	IFDHControl(): use PUCHAR instead of LPCVOID and LPVOID so the driver
	can use TxBuffer[x] without needing a cast.

	* src/PCSC/ifdhandler.h:
	it is now possible to compile a IFDHandler v2.0 with this include file.
	Just #define IFDHANDLERv2 in your source code before #include <ifdhandler.h>

	By default it is setup for for most recent version of the API (V3.0)

	* src/ifdwrapper.c:
	IFDControl_v2() is supported by IFD_HVERSION_2_0 drivers (not
	IFD_HVERSION_1_0)

	* doc/pcsc-lite.bib: add an entry from pcsc-lite documentation

2004-07-04  Damien Sauveron  <sauveron-guest@acer>

	* doc/pcsc-lite.tex:
	IFDHControl(): correct the types of pbSendBuffer and pbRecvBuffer.

2004-07-03  Ludovic Rousseau  <rousseau@acer>

	* doc/ifdhandler-3.tex: IFDHControl(): RxLength is a DWORD not a PDWORD

	* configure.in: 1.2.9-beta4

	* ChangeLog: release 1.2.9-beta4

	* src/libpcsclite.pc.in:
	add @PTHREAD_CFLAGS@ to Cflags: and @PTHREAD_LIBS@ to Libs: so that the
	compiler and linker do the "right" thing.
	Thanks to Ville Skyttä for the patch.

	* src/libmusclecard.pc.in:
	use "Requires: libpcsclite = @VERSION@" instead of just "-lpcsclite"
	Thanks to Ville Skyttä for the patch

	* src/libpcsclite.pc.in: add /PCSC to includedir instead of Cflags:

	* src/libmusclecard.pc.in: includedir is now @includedir@/PCSC

2004-06-30  Ludovic Rousseau  <rousseau@acer>

	* ChangeLog: release 1.2.9-beta3

2004-06-29  Ludovic Rousseau  <rousseau@acer>

	* src/libpcsclite.pc.in:
	the include directory is now ${includedir}/PCSC.

	If your application Makefile uses
	  CFLAGS=`pkg-config libpcsclite --cflags`
	you have nothing to change and the migration of the include files in
	/usr/include/PCSC/ will be painless.

	* src/ifdwrapper.c:
	IFDControl_v2(): if the driver version is != IFD_HVERSION_1_0 we
	_return_ SCARD_E_UNSUPPORTED_FEATURE (not just set the return value)

	IFDControl(): if the driver version is < IFD_HVERSION_3_0 we
	_return_ SCARD_E_UNSUPPORTED_FEATURE (not just set the return value)

	* src/winscard.c:
	SCardReconnect(): if the reset fails it may be either because:
	- the card is unresponsive (SCARD_W_UNRESPONSIVE_CARD)
	or
	- no card is present (SCARD_E_NO_SMARTCARD) and the SCardConnect() was
	  successfull with SCARD_SHARE_DIRECT (no need for a card)

	* src/winscard.c: in SCardConnect() and SCardReconnect(), returns
	SCARD_W_UNRESPONSIVE_CARD if PHSetProtocol() fails with
	SET_PROTOCOL_PPS_FAILED

	* src/prothandler.h:
	define the constant SET_PROTOCOL_WRONG_ARGUMENT and
	SET_PROTOCOL_PPS_FAILED

	* src/prothandler.c:
	PHSetProtocol(): returns SET_PROTOCOL_PPS_FAILED if IFDSetPTS() is
	supported but fails:
	ISO 7816-3:1997 ch. 7.2 PPS protocol page 14
	- If the PPS exchange is unsuccessful, then the interface device shall
	  either reset or reject the card.

2004-06-25  Ludovic Rousseau  <rousseau@acer>

	* src/atrhandler.c:
	do not #undef ATR_DEBUG since it may be defined in config.h with
	./configure --enable-debugatr

2004-06-23  Ludovic Rousseau  <rousseau@acer>

	* src/PCSC/pcsclite.h.in: add definition of SCARD_PROTOCOL_T15

	* src/atrhandler.c:
	- set SCARD_PROTOCOL_T15 in CardCapabilities.AvailableProtocols if T=15
	  is defined (not yet used)
	- in specific mode CardCapabilities.AvailableProtocols shall also be set
	  the the specified protocol

2004-06-22  Ludovic Rousseau  <rousseau@acer>

	* src/winscard_clnt.c:
	remove the hack introduced in version 1.28. It is no more needed since
	the changes in version 1.32 of winscard.c

	* src/prothandler.c:
	PHSetProtocol(): only try to use protocols that are available

2004-06-21  Ludovic Rousseau  <rousseau@acer>

	* src/atrhandler.c, src/dyn_hpux.c, src/dyn_unix.c, src/ifdwrapper.c, src/readerfactory.c, src/winscard.c, src/winscard_clnt.c:
	local variables reorganisations:
	- remove unused variables
	- remove useless initialisations
	- move declaration in the inner block the variable is used

2004-06-18  Ludovic Rousseau  <rousseau@acer>

	* src/winscard.c:
	rewrite the parts managing the protocol in SCardConnect() and
	SCardReconnect() to use the new PHSetProtocol() prototype and simplify
	the code

	* src/prothandler.c, src/prothandler.h: PHSetProtocol():
	- add a ucDefault argument as the default protocol to use
	- completely redesign the function so that IFDSetPTS() is always called
	  to tell the driver which protocol to use and to initialise its
	  internal state

	* src/winscard.c:
	the protocol number in the "Send Protocol:" debug message was wrong

	* src/eventhandler.c, src/prothandler.c, src/readerfactory.c, src/winscard.c:
	update the code to use the new READER_CONTEXT structure with the
	struct pubReaderStatesList *readerState field

	* src/readerfactory.h: in the structure READER_CONTEXT remove:
	  UCHAR ucAtr[MAX_ATR_SIZE];
	  DWORD dwAtrLen;
	  DWORD dwProtocol;
	  DWORD dwStatus;
	  DWORD dwPublicID;
	and replace them by a link to the reader structure:
	  struct pubReaderStatesList *readerState;

	The fields (ATR, procotol, state) were duplicated in both structures
	PREADER_STATE and READER_CONTEXT. It was useless and misleading.

	It was uneasy to change the ATR or the card protocol after the card was
	powered on. A protocol change may occur if the card supports both T=0
	and T=1 and the SCardConnect() does not select the default protocol.

	* src/ifdwrapper.c, src/ifdwrapper.h:
	in IFDStatusICC() the argument pdwProtocol was set as:
	  *pdwProtocol = rContext->dwProtocol;
	and rContext was an input argument.

	So IFDStatusICC() had _no_ action on pdwProtocol expect make a copy form
	an IN parameter to an OUT parameter. This was useless and misleading.
	PDWORD pdwProtocol is now removed.

	* src/README_INTERNALS.txt: add a chapter "Memory structures"

2004-06-17  Ludovic Rousseau  <rousseau@acer>

	* src/eventhandler.h: put back the structure name

	* src/pcscdaemon.c, src/readerfactory.c, src/readerfactory.h:
	do not use a dwAllocNum argument in RFAllocateReaderSpace() since the
	number of contexts is _fixed_ by the declaration of sReadersContexts[].

	It may be interpreted as a (false) possibility of dynamicity and will then
	cause a buffer overflow if dwAllocNum > PCSCLITE_MAX_READERS_CONTEXTS

	* src/ifdwrapper.c, src/readerfactory.c:
	psFunctions.pvf* fields are function pointers so NULL is more appropriate
	than 0

	* src/readerfactory.c:
	correct a bug introduced in version 1.47 that occurs if a reader is
	muti-slot and no more sReadersContexts[] entries are available:
	RFRemoveReader() was called with a NULL lpcReader

	* src/readerfactory.c:
	move declaration of dwContextB in the block it is used

	* src/readerfactory.c:
	move the lpcStripReader[] declaration in the block it is used.

	* src/eventhandler.c, src/eventhandler.h, src/winscard_clnt.c, src/winscard_scf.c:
	rename the structure READER_STATES in READER_STATE (singular) since the
	structure stores only the state of ONE reader

	* src/eventhandler.c, src/eventhandler.h, src/hotplug_libusb.c, src/hotplug_linux.c, src/pcscdaemon.c, src/powermgt_generic.c, src/powermgt_generic.h, src/sys_generic.h, src/sys_unix.c, src/thread_generic.h, src/thread_unix.c, src/tokenparser.l, src/winscard_msg.h, src/winscard_scf.c, src/winscard_svc.c, src/winscard_svc.h:
	correct foobar(); prototypes in foobar(void);

	* src/readerfactory.c, src/readerfactory.h:
	complete the prototypes of RFSuspendAllReaders() and RFAwakeAllReaders()

	* src/readerfactory.h:
	psCapabilites and psProtOptions fields are not used in struct
	ReaderContext so "#if 0" them

2004-06-16  Ludovic Rousseau  <rousseau@acer>

	* src/prothandler.c:
	PHSetProtocol() correctly return the selected protocol

	* src/winscard.c:
	print the Send Protocol in T=? format instead of internal representation
	value.

2004-06-15  Ludovic Rousseau  <rousseau@acer>

	* src/winscard.c:
	improve my previous patch: correctly print an unknown Active Protocol if
	it happens

	* .cvsignore: add ChangeLog.cvs

	* src/winscard.c:
	print the "real" active protocol in the format T=? instead of the
	internal representation of that value (T=0 is coded as 1)

2004-06-11  Ludovic Rousseau  <rousseau@acer>

	* configure.in: 1.2.9-beta3

	* Makefile.am: ChangeLog.cvs is not a .PHONY target but a real file

	* doc/ifdhandler-3.tex:
	- add documentation for LTPBundleFindValueWithKey, debug_msg and debug_xxd
	- ifdhandler.h moved in PCSC/ifdhandler.h

2004-06-10  Ludovic Rousseau  <rousseau@acer>

	* aclocal/acx_pthread.m4:
	version 1.9 to add support of GNU Pth (http://www.gnu.org/software/pth/)

	* src/.cvsignore, src/PCSC/.cvsignore:
	pcsclite.h moved from src/ to src/PCSC/

	* src/PCSC/pcsclite.h.in, src/PCSC/mscdefines.h, src/PCSC/musclecard.h, src/PCSC/winscard.h:
	simplify:
	  #if defined(__APPLE__)
	  #include <PCSC/wintypes.h>
	  #else
	  #include <wintypes.h>
	  #endif
	since we now use PCSC/ for all Unix platforms

	* src/PCSC/ifdhandler.h: include PCSC/pcsclite.h instead of pcsclite.h

	* src/Makefile.am, configure.in:
	src/pcsclite.h moved in src/PCSC/pcsclite.h

	* doc/example/pcsc_demo.c, src/atrhandler.c, src/configfile.l, src/debuglog.c, src/dyn_hpux.c, src/dyn_macosx.c, src/dyn_unix.c, src/eventhandler.c, src/hotplug_generic.c, src/hotplug_libusb.c, src/hotplug_linux.c, src/hotplug_macosx.c, src/ifdwrapper.c, src/musclecard.c, src/muscletest.c, src/pcscdaemon.c, src/powermgt_generic.c, src/powermgt_macosx.c, src/prothandler.c, src/readerfactory.c, src/sys_unix.c, src/testpcsc.c, src/thread_unix.c, src/tokenfactory.c, src/tokenfactory.h, src/tokenparser.l, src/utils/bundleTool.c, src/utils/formaticc.c, src/utils/installifd.c, src/winscard.c, src/winscard_clnt.c, src/winscard_msg.c, src/winscard_scf.c, src/winscard_svc.c:
	use the new PCSC/ location for header files

	* src/Makefile.am:
	install the exported header files in ../include/PCSC/ to avoid name
	polution in ../include/
	also install parser.h

	* src/PCSC/pcsclite.h.in: use /* */ instead of // for comments

	* src/readerfactory.c:
	rework RFSetReaderName() to simply the code and always start with the
	lowest number available (like in previous pcsc-lite version)

2004-06-09  Ludovic Rousseau  <rousseau@acer>

	* src/hotplug_libusb.c: use a dynamic array for available USB drivers:
	- avoid a buffer overflow (argh!)
	- allow to use more than 16 drivers/supported readers

	* doc/example/pcsc_demo.c:
	replace SCARD_PROTOCOL_ANY by SCARD_PROTOCOL_T0 | SCARD_PROTOCOL_T1
	since SCARD_PROTOCOL_ANY is _not_ defined by Microsoft PC/SC and is not
	equals to SCARD_PROTOCOL_T0 | SCARD_PROTOCOL_T1

	SCARD_PROTOCOL_ANY is deprecated and should not be used!

	* src/prothandler.c: improve debug messages and comments

	* src/winscard.c: remove useless ' ' at the end of some lines

	* src/atrhandler.c:
	- add support of specific mode by the presence of TA2 (protocol not
	  negociable)
	- improve debug messages

	* src/atrhandler.c:
	code reindentation and remove useless blank and { } lines

	* src/atrhandler.c: make debug messages work when ATR_DEBUG is set

2004-06-08  Ludovic Rousseau  <rousseau@acer>

	* src/PCSC/ifdhandler.h: add #include <pcsclite.h>

2004-06-07  Ludovic Rousseau  <rousseau@acer>

	* src/thread_unix.c: remove two unused #define

	* configure.in:
	a lexer library (lex or flex) is mandatory to parse /etc/reader.conf so
	exit ./configure if none is found

	* configure.in, src/Makefile.am:
	the libpcsclite library does not compile and work without a thread library
	even with --disable-threadsafe

2004-06-05  Damien Sauveron  <sauveron-guest@acer>

	* src/utils/formaticc.c:
	Change the names of the types LPCSTR to LPCTSTR and LPSTR to LPTSTR to be compliant with the Microsoft SCard API

	* src/tokenparser.l: Add the include needed <errno.h>

	* src/winscard_scf.c:
	Add a note about 2 unused functions in the SCF part.

	* doc/example/pcsc_demo.c, doc/pcsc-lite.tex, src/PCSC/ifdhandler.h, src/PCSC/winscard.h, src/PCSC/wintypes.h, src/eventhandler.c, src/ifdwrapper.c, src/readerfactory.c, src/readerfactory.h, src/winscard.c, src/winscard_clnt.c, src/winscard_scf.c:
	Change the names of the types LPCSTR to LPCTSTR and LPSTR to LPTSTR to be compliant with the Microsoft SCard API

	* src/winscard_clnt.c:
	Add the two inline in the declarations to avoid warning

2004-05-30  Ludovic Rousseau  <rousseau@acer>

	* src/tokenparser.l:
	display the error message (errno) if the bundle file cannot be opened

2004-05-26  Ludovic Rousseau  <rousseau@acer>

	* src/winscard_clnt.c:
	declare internal only function as "static" (and two one-line functions as "inline")

	* src/eventhandler.c, src/hotplug_libusb.c, src/thread_generic.h, src/winscard_svc.c:
	add a ' ' argument in PCSCLITE_THREAD_FUNCTION( ) so that old gcc
	(gcc-2.95) does not comply with "macro `PCSCLITE_THREAD_FUNCTION' used
	without args" any more.

	* doc/pcsc-lite.tex:
	add "Some SCardControl commands" section (IFD_EXCHANGE and VERIFY_PIN)

	* doc/pcsc-lite.bib: add CCID spec reference

2004-05-25  Ludovic Rousseau  <rousseau@acer>

	* doc/example/pcsc_demo.c: signedness issue detected by gcc -pedantic

	* src/thread_unix.c: remove useless { } and simplify the code

	* src/PCSC/debuglog.h, src/debuglog.c, src/dyn_macosx.c, src/eventhandler.c, src/hotplug_libusb.c, src/hotplug_linux.c, src/hotplug_macosx.c, src/muscletest.c, src/powermgt_macosx.c, src/testpcsc.c, src/thread_generic.h, src/thread_unix.c, src/utils/formaticc.c, src/winscard_msg.c, src/winscard_svc.c:
	recompile using -pedantic and correct lots of cast "problems"

2004-05-24  Ludovic Rousseau  <rousseau@acer>

	* src/configfile.l: - allow ':' in DEVICENAME
	- use ':' to indicate a non-real device (do not test for its existence
	  as a file).
	  You can use this in something like "net://1.2.3.4/foobar" to indicate
	  a reader on a remote machine like an X11 terminal.

2004-05-19  Ludovic Rousseau  <rousseau@acer>

	* doc/pcsc-lite.tex: for SCardConnect()
	- dwPreferredProtocols is a bit mask of acceptable protocols
	- SCARD_SHARE_DIRECT can be used to talk to the reader without a card inserted

2004-05-13  Ludovic Rousseau  <rousseau@acer>

	* doc/example/Makefile.am:
	do not install pcsc_demo since it is just a sample code for developpers
	that is not supposed (the code) to do anything useful

	* .cvsignore: ignore autom4te.cache directory

	* src/.cvsignore:
	ignore pcsclite.h since it is generated from pcsclite.h.in

	* ChangeLog, DRIVERS, README, SECURITY, doc/formaticc.1, doc/pcsc-lite.tex, doc/pcscd.8.in, doc/reader.conf.5.in, etc/SmartcardServices, etc/StartupParameters.plist, etc/pcscd.startup, src/README_INTERNALS.txt:
	Typos. thanks to Ville Skyttä for the patches

	* src/Makefile.am:
	install ifdhandler.h so drivers can use it for compilation.
	Patch by Ville Skyttä

2004-05-12  Ludovic Rousseau  <rousseau@acer>

	* etc/Makefile.am:
	remove reader.conf from EXTRA_DIST since it is already in sysconf_DATA

	* etc/reader.conf.in:
	comment the configuration lines since they are not valid and will
	prevent the start of pcscd if they are not modified

	* configure.in:
	use the modern form for AC_INIT() instead of the deprecated one.

	* src/PCSC/pcsclite.h.in:
	use @VERSION@ for PCSCLITE_VERSION_NUMBER instead of a manual value.
	Thanks to Damien Sauveron for the idea.

	* src/utils/Makefile.am:
	install bundleTool and installifd in ../sbin/ instead of ../bin/

2004-05-11  Ludovic Rousseau  <rousseau@acer>

	* ChangeLog: release 1.2.9-beta2

	* configure.in, src/PCSC/pcsclite.h.in: beta2 version

	* src/Makefile.am:
	change libmusclecard current version to 1 so that old libmusclecard0 and
	new libmusclecard1 can cohabitate on the same system and will not break
	existing programs during upgrades.

	This is because libmusclecard is provided in the same distrib/package as
	libpcsclite. If we want two libpcsclite to cohabitate we must also
	ensure that the two libmusclecard can also cohabitate.

	* doc/Makefile.am:
	generate local icons for the latex2html generated pages

	* DRIVERS: add a / at the end of URLs and directory names

	* src/pcscdaemon.c: print pcsc-lite version number during startup

2004-05-10  Ludovic Rousseau  <rousseau@acer>

	* src/Makefile.am: install pcsclite.h instead of pcsclite.h.in

	* doc/pcsc-lite.tex: add the chapter "Multithreading and contexts"

	* doc/.cvsignore: ignore ifdhandler-3 temporary files

	* doc/pcscd.8.in: some rewrite

	* doc/formaticc.1: caracters -> characters

	* doc/bundleTool.8.in, src/utils/bundleTool.c:
	approprate -> appropriate

	* ChangeLog, HELP, NEWS, README, configure.in, doc/bundleTool.8.in, doc/formaticc.1, doc/pcsc-lite.tex, doc/pcscd.8.in, etc/SmartcardServices, etc/StartupParameters.plist, src/PCSC/musclecard.h, src/debuglog.c, src/muscletest.c, src/utils/formaticc.c:
	smartcard -> smart card, musclecard -> MuscleCard

	* doc/Makefile.am: add ifdhandler-3.tex ifdhandler-3.pdf

	* doc/ifdhandler-3.tex: IFD Handler API in LaTeX format

	* src/winscard.c:
	in SCardReconnect(), SCardDisconnect() and SCardEndTransaction()
	SCARD_UNPOWER_CARD is "Power down the card and reset it (Cold Reset)" so
	we really power down _and_ then power up the card.

2004-05-07  Ludovic Rousseau  <rousseau@acer>

	* configure.in:
	the comment for --enable-extendedapdu was wrong. The maximum APDU size
	is 32KB and not 128KB. Thanks to Damien Sauveron.

2004-05-06  Ludovic Rousseau  <rousseau@acer>

	* ChangeLog: release 1.2.9-beta1

	* configure.in, src/PCSC/pcsclite.h.in: version 1.2.9-beta1

	* src/ifdwrapper.c:
	in IFDControl_v2 and IFDControl test the ifd handler version and
	possibly return before the critical section (mutex)

	* src/ifdwrapper.c:
	in IFDControl_v2() and IFDControl(), do not return between SYS_MutexLock
	and SYS_MutexUnLock but set rv to the correct value. Otherwise the daemon
	is dead locked.

	* src/hotplug_generic.c, src/hotplug_macosx.c:
	add an empty HPStopHotPluggables() function

	* src/muscletest.c:
	use the local pcsclite.h instead of the (old) one already installed

	This was problematic for MacOSX since winscard.h wanted to include
	<PCSC/pcsclite.h> which is the old and incompatible one.

	* configure.in, src/Makefile.am, src/PCSC/pcsclite.h.in:
	add support of --enable-extendedapdu argument to allow the use of big
	APDUs (up to 128 KBytes)

	* src/winscard_msg.c: minor reindentations

	* src/winscard_svc.c:
	in SCardSetAttrib() the cbAttrLen is a DWORD and not a LPDWORD so use
	gsStr->cbAttrLen instead of &gsStr->cbAttrLen. Bad cut-n-paste here!

2004-05-03  Ludovic Rousseau  <rousseau@acer>

	* src/readerfactory.c:
	- rename dwFeeds and dwMutex to pdwFeeds and pdwMutex since they are
	  pointers
	- add a check to avoid removing an aleady removed driver (closes bug
	  [ #300684 ] pcscd segfaults on 'if (*sContext->dwMutex == 1)')

	* src/readerfactory.h:
	rename dwFeeds and dwMutex to pdwFeeds and pdwMutex since they are
	pointers

2004-04-27  Ludovic Rousseau  <rousseau@acer>

	* doc/pcsc-lite.tex:
	patch from Damien Sauveron to rectify the source code examples.

2004-04-21  Ludovic Rousseau  <rousseau@acer>

	* doc/Makefile.am:
	do not stop if pcsc-lite does not exist and is removed

	* doc/Makefile.am: distribute pcsc-lite.tex

	* doc/pcsc-lite.tex: - SCardControl new API
	- add SCardGetAttrib()/SCardSetAttrib()

	* src/dyn_hpux.c, src/dyn_macosx.c, src/dyn_unix.c, src/eventhandler.c, src/pcscdaemon.c, src/powermgt_macosx.c, src/prothandler.c, src/readerfactory.c, src/sys_unix.c, src/tokenfactory.c, src/winscard.c, src/winscard_clnt.c, src/winscard_msg.c, src/winscard_svc.c:
	remove the function names from the debug messages

	* src/PCSC/debuglog.h: add __FUNCTION__ in the debug messages

2004-04-19  Damien Sauveron  <sauveron-guest@acer>

	* src/pcscdaemon.c: Typo in email address.

2004-04-19  Ludovic Rousseau  <rousseau@acer>

	* src/pcscdaemon.c: update copyright date

	* src/PCSC/pcsclite.h.in: add SCARD_ATTR_* tags for SCardGetAttrib()

	* src/ifdwrapper.c:
	RxBuffer argument of IFDControl is LPVOID and not LPCVOID

	* src/PCSC/ifdhandler.h:
	FDHControl() argument lpInBuffer and lpOutBuffer are LPCVOID and LPVOID
	and not PUCHAR

	* src/testpcsc.c: add test for SCardSetAttrib()

	* src/PCSC/winscard.h, src/winscard.c, src/winscard_clnt.c, src/winscard_msg.h, src/winscard_svc.c:
	add support for SCardGetAttrib() and SCardSetAttrib()

	* src/testpcsc.c:
	do not ask for reader number if only one reader is present

	* src/testpcsc.c: remove useless REPEAT_TEST conditional code

	* src/testpcsc.c: test SCardGetAttrib()

	* src/ifdwrapper.h:
	lpOutBuffer argument is LPVOID not LPCVOID in IFDControl

2004-04-16  Ludovic Rousseau  <rousseau@acer>

	* src/testpcsc.c:
	do not SCardReleaseContext() in case of error in SCardControl test

	* src/PCSC/winscard.h, src/ifdwrapper.c, src/ifdwrapper.h, src/winscard.c, src/winscard_clnt.c, src/winscard_msg.h, src/winscard_svc.c:
	add support of the new IFDHControl() API

	* src/testpcsc.c: add a test for SCardControl()

	* src/PCSC/ifdhandler.h:
	rename IFDHControl() to IFDHControl_v2() and add a new IFDHControl()
	with the new API

2004-04-15  Ludovic Rousseau  <rousseau@acer>

	* src/ifdwrapper.c: remove implicit/useless { }

	* src/README_INTERNALS.txt: document the SCardControl migration

	* src/winscard_clnt.c, src/winscard_msg.h, src/winscard_svc.c:
	pcscd and libpcsclite now exchange a protocol version to know what API
	to use

	* src/Makefile.am:
	change library version to 1:0:0 since the interface changed

	* doc/.cvsignore: ignore LaTeX temporary files

	* doc/pcsc-lite.bib: bibliography in BibTeX format

	* doc/Makefile.am: - generate .pdf from .tex
	- distribute the generated pcsc-lite.pdf

	* doc/pcsc-lite-0.8.7.pdf, doc/pcsc-lite.tex:
	the pcsc-lite pdf documentation is now generated from a LaTeX document

2004-04-14  Ludovic Rousseau  <rousseau@acer>

	* src/pcscdaemon.c:
	document in the help text that '--foreground' imply '--debug stderr'

	* src/winscard_msg.h:
	add a dummy field (to replace request_id) in sharedSegmentMsg to have
	the same structure size as in previous pcsc-lite versions so that a new
	pcscd can talk to an old libpcsclite and vice-versa.

	* src/debuglog.c: add a default case in pcsc_stringify_error()

2004-04-13  Ludovic Rousseau  <rousseau@acer>

	* src/testpcsc.c: test SCardListReaderGroups()

2004-04-06  Ludovic Rousseau  <rousseau@acer>

	* src/winscard.c:
	remove the code to map SCARD_UNPOWER_CARD on IFD_RESET.
	SCARD_UNPOWER_CARD is power down and power up (cold reset) => IFD_POWER_DOWN
	SCARD_RESET_CARD is just power up (warm reset) => IFD_RESET

2004-04-05  Ludovic Rousseau  <rousseau@acer>

	* doc/example/pcsc_demo.c:
	initialize readers to NULL to avoid a "`readers' might be used
	uninitialized" compilation warning

2004-04-02  Ludovic Rousseau  <rousseau@acer>

	* configure.in, doc/Makefile.am: add support for doc/reader.conf.5

	* doc/reader.conf.5.in: new manpage

	* doc/bundleTool.8.in: typos

	* doc/example/pcsc_demo.c: add two missing free()

2004-04-01  Ludovic Rousseau  <rousseau@acer>

	* src/hotplug_libusb.c:
	do not try to restart a USB driver if the first execution fails (because
	of a bug in the driver or whatever) since the next execution of the
	driver will, with a great probability, also fail. The user has to
	unplug/replug the reader to restart the driver. This prevents to fill
	the system logs with an error message every 1 second.

	* doc/example/pcsc_demo.c:
	remove a useless occurence of PCSCLITE_MAX_READERS_CONTEXTS

2004-03-31  Ludovic Rousseau  <rousseau@acer>

	* src/readerfactory.c:
	use sizeof(lpcStripReader) instead of MAX_READERNAME

	* src/muscletest.c: also print tokenType field as a number and string

	* src/musclecard.c:
	Initialize currentToken->tokenType in MSCListTokens(). Closes "[ #300607 ]
	MSCListTokens should set tokenType to know state before OR operation"

	* src/musclecard.c: replace some 0 bu NULL for pointers

	* src/muscletest.c: - replace 0 by NULL
	- remove some { } for one line blocks

	* doc/example/pcsc_demo.c:
	recode the readers enumeration to avoid the use of PCSCLITE_MAX_READERS_CONTEXTS

	* src/PCSC/mscdefines.h:
	use SCARDCONTEXT and SCARDHANDLE instead of MSCLong32

	* src/PCSC/winscard.h:
	use SCARDCONTEXT, DWORD, LPSCARDHANDLE, etc. instead of long, unsigned
	long, long *, etc. to be more Windows PC/SC compliant

	* src/winscard_clnt.c: remove two "by najam" comments

	* src/PCSC/pcsclite.h.in:
	use MAX_ATR_SIZE instead of 33 in the declaration of SCARD_READERSTATE_A

	* src/PCSC/pcsclite.h.in:
	proposed patch: define PCSCLITE_MAX_READERS with a deprecated attribute

2004-03-30  Ludovic Rousseau  <rousseau@acer>

	* src/pcscdaemon.c:
	remove the warning if no /etc/reader.conf is found. It is normal to not
	have an /etc/reader.conf for USB readers only.

	* src/configfile.l:
	print a warning if the LIBPATH contains ".bundle". USB drivers SHOULD NOT be declared in reader.conf

	* src/configfile.l: add strerror(errno) in the error message.

	* src/configfile.l: use NULL instead of 0

	* src/configfile.l: code reindentation

	* etc/.cvsignore: remove etc/ from filename

	* .cvsignore: remove PCSC/ from filenames

	* .cvsignore: files to ignore by CVS

2004-03-28  Ludovic Rousseau  <rousseau@acer>

	* src/readerfactory.c: simplify a bit an hex->decimal conversion

	* src/readerfactory.c:
	left shift one bloc of code that was in a isolated { }

	* src/readerfactory.c: remove { } for one instruction if () blocs

	* src/readerfactory.c:
	use a direct "DWORD dwNumReadersContexts" instead of an indirect "DWORD
	*dwNumReadersContexts". This will remove bugs like the one at line 90:
	"if (dwNumReadersContexts != 0)" is not "if (*dwNumReadersContexts != 0)"

2004-03-24  Ludovic Rousseau  <rousseau@acer>

	* src/tokenfactory.c:
	correct atrString[] buffer size. The ATR is in ASCII so it must be MAX_ATR_SIZE*2 +1

2004-03-23  Ludovic Rousseau  <rousseau@acer>

	* src/hotplug_libusb.c: add void argument in HPStopHotPluggables()

	* src/readerfactory.c:
	initialize vHandle field to NULL in RFAllocateReaderSpace() (caused a
	crash under MacOS X)

	* src/pcscdaemon.c:
	add the errno text message if specified reader.conf file is not found

	* src/pcscdaemon.c:
	use PCSCLITE_READER_CONFIG instead of reader.conf in debug message

2004-03-20  Ludovic Rousseau  <rousseau@acer>

	* src/hotplug_linux.c: add support for HPStopHotPluggables()

2004-03-19  Ludovic Rousseau  <rousseau@acer>

	* aclocal/.cvsignore, doc/.cvsignore, doc/example/.cvsignore, etc/.cvsignore, src/.cvsignore, src/utils/.cvsignore, win32/.cvsignore:
	new files to ignore files not in CVS

	* src/winscard.c:
	really reset the card when asked to in SCardReconnect()

	* src/winscard_clnt.c:
	This is hack to allow a change of ATR at Reconnect without physically
	changing the card. This should not happen in real life so should not be
	problematic and so is active by default (ATR_CHANGE_AT_RECONNECT).

	* src/winscard_clnt.c:
	remove duplicated SYS_MutexUnLock() in SCardStatus()

2004-03-18  Ludovic Rousseau  <rousseau@acer>

	* src/pcscdaemon.c:
	call HPStopHotPluggables() before stopping the drivers to avoid a new
	reader detection/start by hotplug when we want to stop everything

	* src/hotplug.h, src/hotplug_libusb.c:
	add HPStopHotPluggables() to exit the hotplug thread

	* src/pcscdaemon.c: set AraKiri to TRUE instead of 1

	* doc/example/pcsc_demo.c: - add SCardReconnect() sample code
	- allow to select the reader number instead of selecting always the first
	  one

2004-03-11  Ludovic Rousseau  <rousseau@acer>

	* src/PCSC/pcsclite.h.in: version 1.2.1

2004-03-02  Ludovic Rousseau  <rousseau@acer>

	* configure.in: version 1.2.1

2004-02-23  Ludovic Rousseau  <rousseau@acer>

	* src/hotplug_libusb.c:
	use deviceName defined as usb:idVendor/idProduct:libusb:busname:filename
	in HPAddHotPluggable(). This should avoid wrong USB enumeration when
	used in IFDHCreateChannelByName()

2004-02-11  Ludovic Rousseau  <rousseau@acer>

	* ChangeLog: merge 1.2.0 final branch

2004-02-04  Ludovic Rousseau  <rousseau@acer>

	* src/hotplug_linux.c:
	DIR in --enable-usbdropdir=DIR may not finish by / in (deprecated) hotplug_linux.c

2004-01-24  Ludovic Rousseau  <rousseau@acer>

	* etc/reader.conf.in:
	use "DEVICENAME /dev/ttySx_not_configured" to make it (more) clear it
	should be configured.

	* etc/reader.conf.in:
	reader.conf may also be needed for PCMCIA readers and not olny serial.

2004-01-23  Ludovic Rousseau  <rousseau@acer>

	* etc/reader.conf.in:
	add a note: "This file has to be configured for serial readers only."

	* src/winscard_clnt.c:
	check that psContextMap[dwContextIndex].psChannelMap[dwChannelIndex].readerName is non NULL before accessing it in strcmp()

2004-01-22  Antti Tapaninen  <aet-guest@acer>

	* src/winscard_clnt.c, src/winscard_svc.c:
	- Simplify the psContext/psContextMap declarations to fix
	  build conflicts against some operating systems headers.

2004-01-21  David Corcoran  <corcoran-guest@acer>

	* src/debuglog.c:
	Changed unsigned char * to char * and did some typecasting
	to get rid of warnings when building in 64bit mode ...

2004-01-21  Damien Sauveron  <sauveron-guest@acer>

	* src/thread_unix.c: Remove an useless include

2004-01-20  Ludovic Rousseau  <rousseau@acer>

	* src/hotplug_linux.c, src/hotplug_macosx.c:
	correct comment about empty deviceName argument

2004-01-19  Damien Sauveron  <sauveron-guest@acer>

	* src/ifdwrapper.c:
	Use the device name to create channel only if defined.

	* src/hotplug_macosx.c, src/hotplug_linux.c:
	Add an empty parameter for deviceName to allow the compilation.

	* src/winscard_msg.c: Remove the useless include of sys/mman.h

2004-01-18  Damien Sauveron  <sauveron-guest@acer>

	* src/debuglog.c: Remove unused function.

2004-01-16  Damien Sauveron  <sauveron-guest@acer>

	* src/configfile.l, src/thread_unix.c, src/thread_generic.h, src/ifdwrapper.h, src/ifdwrapper.c, src/PCSC/ifdhandler.h, src/hotplug_libusb.c, src/winscard_msg.h, src/winscard_svc.h, src/winscard_svc.c, src/winscard_msg.c, src/winscard_clnt.c, src/readerfactory.c:
	Update the copyright.

	* src/pcscdaemon.c: Add my name, my email and the copyright.

	* src/winscard_clnt.c:
	Remove the useless PID information field. Also remove the WrapSHMWrite argument related to PID information.

	* src/winscard_msg.c:
	Remove an useless information field of the messages sent by the client to the server. Also remove in the prototype of WrapSHMWrite the parameter related to the deleted field.

	* src/winscard_msg.h:
	Remove a useless information field of the messages sent by the client to the server. Also remove in the prototype of WrapSHMWrite the parameter related to the deleted field.

	* src/readerfactory.c:
	Correct the indentation of some lines and add debug information.

	* src/winscard_svc.c: Cleanup the code.

	* src/powermgt_macosx.c: Modify the output of the debug message.

2004-01-15  David Corcoran  <corcoran-guest@acer>

	* src/utils/sample.in:
	Changed Co to C(ZERO) instead.  The Oh caused big problems with
	formaticc

	* src/testpcsc.c:
	Needed to define dwAtrLen so it would not just pick up garbage
	for SCardStatus.

	* src/winscard_clnt.c:
	In SCardStatus some of the memcopy's and strcpy's were occurring
	before bounds checking.

	* src/winscard_clnt.c:
	Changed error return from SYS_OpenFile of PCSCLITE_PUBSHM_FILE from UNKNOWN to
	SCARD_E_NO_SERVICE.  Sorry for no diffs, I'll put them in next time ...

2004-01-14  Ludovic Rousseau  <rousseau@acer>

	* AUTHORS: reformat and add Damien Sauveron and Antti Tapaninen

2004-01-14  Damien Sauveron  <sauveron-guest@acer>

	* src/ifdwrapper.c: Add the support of IFDHandler interface v3

	* src/ifdwrapper.h: Modify the prototype of IFDOpenIFD.

	* src/readerfactory.c: Add the support of IFDHandler interface v3

	* src/readerfactory.h:
	Add the function's pointer for the new function introduced in IFDHandler interface v3

	* src/PCSC/pcsclite.h.in: Define the length maximum of a device name.

	* src/hotplug_libusb.c:
	Get the device name of the USB device and give it to RFAddReader.

	* src/configfile.l: Give the device name to RFAddReader

	* src/readerfactory.h:
	Add a new parameter to the prototype of RFAddReader according to the changes in readerfactory.c

	* src/readerfactory.c:
	Add a new parameter to RFAddReader to get the device name

	* src/readerfactory.h: Add the device name

	* src/PCSC/ifdhandler.h:
	Add the prototype of the new function introduced in the IFDHandler interface v3

	* src/configfile.l: Remove a line commited by error. Sorry.

	* src/configfile.l:
	Check that DEVICENAME and LIBPATH files exist and if an error occurs during the parsing the reader is not added.

2004-01-13  Ludovic Rousseau  <rousseau@acer>

	* src/hotplug_macosx.c: small code reorganisation for an easier reading

	* src/configfile.l: use macro DebugLogB() instead of debug_msg()

2004-01-13  Damien Sauveron  <sauveron-guest@acer>

	* src/readerfactory.c, src/ifdwrapper.c:
	Modify tests in order to be homogeneous with those for next IFDHandlers versions

2004-01-13  Ludovic Rousseau  <rousseau@acer>

	* Makefile.am: simplify the perl expression in ChangeLog.cvs rule

	* make-dirs/README: reformat to 72 columns

2004-01-12  David Corcoran  <corcoran-guest@acer>

	* make-dirs/Makefile.solaris, make-dirs/README, make-dirs/config.h:
	Added README for Makefile directory and sample config.h

	* make-dirs/Makefile.solaris: C
	Adding make-dirs plus Makefiles for certain configurations when people don't want to
	try and fix autoconf

	VS: ----------------------------------------------------------------------

2004-01-12  Ludovic Rousseau  <rousseau@acer>

	* src/hotplug_libusb.c:
	correct the file header. It was a cut-n-paste from hotplug_linux.c

2004-01-08  Ludovic Rousseau  <rousseau@acer>

	* src/hotplug_macosx.c:
	buffer overflow: the driver list was not terminated and caused crashes.

	* src/pcscdaemon.c: correct my email address

2003-12-16  Ludovic Rousseau  <rousseau@acer>

	* src/winscard_svc.c: code reordering to make it a bit more clear

2003-12-16  Damien Sauveron  <sauveron-guest@acer>

	* src/winscard_msg.h:
	Remove the old functions and add the new functions

	* src/winscard_msg.c:
	Set up the new functions needed by the thread handling the client connection/disconnection and needed by the thread handling the requests in a context

	* src/winscard_svc.h:
	Remove the old functions and add the new functions

	* src/winscard_svc.c: Design to handle all the requests in the context

	* src/pcscdaemon.c:
	Change the design of pcscdaemon. It gets the connection/disconnection from the client to the server (create/destroy a context), creates a new thread and then this thread will manage all the requests for this context

	* src/winscard_clnt.c:
	Add mutex for each context and remove the global mutex except for some operations

	* src/thread_unix.c, src/thread_generic.h:
	Add functions for identify and compare threads

2003-12-11  David Corcoran  <corcoran-guest@acer>

	* src/winscard_scf.c: Index: winscard_scf.c

2003-12-08  Ludovic Rousseau  <rousseau@acer>

	* etc/pcscd.startup: use /etc/sysconfig/pscsd and correct some typos

2003-11-20  Ludovic Rousseau  <rousseau@acer>

	* aclocal/acx_pthread.m4:
	new upstream version to avoid checking for pthread.h which does not
	exist on *BSD

2003-11-18  Ludovic Rousseau  <rousseau@acer>

	* src/dyn_win32.c:
	revert test of return value from FreeLibrary. Thanks to Peter Williams
	for the patch.
	http://archives.neohapsis.com/archives/dev/muscle/2003-q4/0136.html

2003-11-09  Antti Tapaninen  <aet-guest@acer>

	* pbx/config.h, pcsc.pbproj/project.pbxproj:
	- Upgrade MacOS X project build files for XCode

	* doc/example/pcsc_demo.c: - Build fix

	* src/PCSC/pcsclite.h.in: - Cleanups

	* src/PCSC/pcsclite.h.in, src/utils/bundleTool.c:
	- Allow regular pcsclite.h to be used under win32 platform

2003-11-05  Ludovic Rousseau  <rousseau@acer>

	* src/libmusclecard.pc.in, src/libpcsclite.pc.in:
	add muscledropdir (in libmusclecard) and usbdropdir (in libpcsclite) so
	we can use `pkg-config libpcsclite --variable=usbdropdir` to find the
	directory to use. Should be used by drivers and plugins installation.
	Thanks to Ville Skyttä for the patch.

2003-11-02  Ludovic Rousseau  <rousseau@acer>

	* src/utils/bundleTool.c:
	port under Win32 (patch from Peter Williams) and some code cleanup

2003-10-30  Ludovic Rousseau  <rousseau@acer>

	* src/PCSC/pcsclite.h.in:
	changed back PCSCLITE_MAX_READERS_CONTEXTS from 256 to 16. 16 readers is
	clearly enough for most users. The correct solution is to use a list
	instead of an array.

	* src/PCSC/pcsclite.h.in:
	remove definition of PCSCLITE_MAX_COMSIZE (Maximum arg size) now useless

	* src/pcscdaemon.c: - send debug to syslog by default
	- send debug to stderr if --foreground|-f is used (no need to add
	  --debug stderr anymore)
	- use strcmp() instead of strncmp() in --debug parsing since one
	  argument has a fixed size anyway
	- define and use TRUE/FALSE constants

	* src/debuglog.c, src/PCSC/debuglog.h:
	remove log to a file service since it was not used.

2003-10-29  Damien Sauveron  <sauveron-guest@acer>

	* src/pcscdaemon.c: Add the option [-a] to the usage of pcscd

	* etc/pcscd.startup:
	Solve a problem of recognizition by serviceconf (patch from Tommaso Cucinotta)

2003-10-27  Ludovic Rousseau  <rousseau@acer>

	* ChangeLog, configure.in, src/PCSC/pcsclite.h.in: release 1.2.0 final

2003-10-23  Damien Sauveron  <sauveron-guest@acer>

	* src/winscard_svc.c:
	Sorry I have done an error in the name that I want! Now it is the good name for this structure

	* src/winscard_svc.c:
	Change the name of a structure to better explain its usage

2003-10-22  Damien Sauveron  <sauveron-guest@acer>

	* src/winscard_msg.c: Add a debug message when a client disappears

	* src/pcscdaemon.c:
	Move a debug message in an other file to have the good client number when it disappears

2003-10-21  Antti Tapaninen  <aet-guest@acer>

	* cvsroot/pcsclite/PCSC/src/winscard_scf.c, src/PCSC/pcsclite.h.in:
	- Potential security fixes to SCF client

	* src/hotplug_libusb.c, src/hotplug_linux.c, src/hotplug_macosx.c:
	- More merging between the hotplug implementations
	- Get rid of some internal limitation defines, there
	  seems to be more than enough of these things in
	  pcsclite.h already

	* src/PCSC/parser.h, src/hotplug.h, src/hotplug_libusb.c, src/hotplug_linux.c, src/hotplug_macosx.c, src/tokenfactory.c:
	- Move all common hotplug defines into hotplug.h
	- Remove extra LTPBundleFindValueWithKey declarations

	* src/pcscdaemon.c, src/readerfactory.c: - errno.h cleanups

	* win32/PCSC.dsp: - Forgot to commit

	* win32/Makefile.am, win32/win32_pcsclite.h:
	- Remove win32_pcsclite.h, it's out of sync anyway and the one
	  who wishes to use pcsc-lite under win32 platform in any
	  situation should probably patch src/pcsclite.h and renew
	  win32/config.h.

2003-10-20  Damien Sauveron  <sauveron-guest@acer>

	* src/PCSC/pcsclite.h.in: Increase the max readers contexts value

	* src/readerfactory.c: Support of 255 readers max

	* src/winscard_svc.c:
	Correct a bug introduce by me. Sorry. It will be good in the future to improve this part

	* src/hotplug_linux.c: Correct with the goods concepts constants

	* src/readerfactory.c: Change variables names

	* src/hotplug_libusb.c: Correct with the goods concepts constants

	* src/winscard_clnt.c:
	Correct with the goods concepts constants, correct some comments and variable name

	* src/winscard_svc.c, src/eventhandler.c, src/pcscdaemon.c, src/readerfactory.h, src/readerfactory.c:
	Correct with the goods concepts constants

	* doc/example/pcsc_demo.c: Correct with the good concept

	* src/PCSC/pcsclite.h.in: Introduce the limitations about the concepts

	* src/README_INTERNALS.txt: A clean up.

	* src/README_INTERNALS.txt: Add a description of PC/SC Lite Concepts.

2003-10-18  Ludovic Rousseau  <rousseau@acer>

	* doc/example/pcsc_demo.c:
	put back the GNU GPL license since it is not protected by the BSD
	license used by the other files.

2003-10-18  Antti Tapaninen  <aet-guest@acer>

	* src/configfile.l, src/tokenparser.l, cvsroot/pcsclite/PCSC/src/winscard_scf.c, doc/example/pcsc_demo.c, src/PCSC/debuglog.h, src/PCSC/ifdhandler.h, src/PCSC/mscdefines.h, src/PCSC/musclecard.h, src/PCSC/parser.h, src/PCSC/pcsclite.h.in, src/PCSC/winscard.h, src/PCSC/wintypes.h, src/atrhandler.c, src/atrhandler.h, src/configfile.h, src/debuglog.c, src/dyn_generic.h, src/dyn_hpux.c, src/dyn_macosx.c, src/dyn_unix.c, src/dyn_win32.c, src/eventhandler.c, src/eventhandler.h, src/hotplug.h, src/hotplug_generic.c, src/hotplug_libusb.c, src/hotplug_linux.c, src/hotplug_macosx.c, src/ifdwrapper.c, src/ifdwrapper.h, src/musclecard.c, src/muscletest.c, src/pcscdaemon.c, src/powermgt_generic.c, src/powermgt_generic.h, src/prothandler.c, src/prothandler.h, src/readerfactory.c, src/readerfactory.h, src/sys_generic.h, src/sys_unix.c, src/testpcsc.c, src/thread_generic.h, src/thread_unix.c, src/thread_win32.c, src/tokenfactory.c, src/tokenfactory.h, src/utils/bundleTool.c, src/utils/formaticc.c, src/utils/installifd.c, src/winscard.c, src/winscard_clnt.c, src/winscard_msg.c, src/winscard_msg.h, src/winscard_svc.c, src/winscard_svc.h, win32/win32_pcsclite.h:
	- Unify the copyright/description header part for most of the files

	* src/hotplug_libusb.c, src/hotplug_linux.c:
	- Remove USB bundle platform (Linux) hardcoding and replace
	  it with PCSC_ARCH.

2003-10-15  Ludovic Rousseau  <rousseau@acer>

	* ChangeLog: the release number was wrong :-)

	* ChangeLog: release 1.2.0-rc3

	* Makefile.am:
	Antti Tapaninen and Damien Sauveron have now their names in ChangeLog.cvs

	* src/tokenfactory.c: correct a typo

	* src/winscard_msg.c:
	perform a round-robbin among clients to avoid starvation under heavy
	load. Patch from Bettina Martelli.

2003-10-15  Damien Sauveron  <sauveron-guest@acer>

	* src/winscard_clnt.c:
	Verify the availabilty of the daemon before to try a connection.

2003-10-13  Damien Sauveron  <sauveron-guest@acer>

	* src/winscard_svc.c: Add a verification before to release a context.

2003-10-04  Damien Sauveron  <sauveron-guest@acer>

	* doc/pcscd.8.in: correct the typo

2003-09-30  Ludovic Rousseau  <rousseau@acer>

	* src/winscard_clnt.c:
	SCardEstablishContextTH: print the shared file name if open fails

	* src/winscard_clnt.c:
	send debug to stdout only if the environment variable MUSCLECARD_DEBUG
	is defined

	* src/tokenfactory.c:
	having a trailing / in MSC_SVC_DROPDIR (--enable-muscledropdir) is no more mandatory

	* src/tokenfactory.c:
	print the directory name with the error message if opendir failed

2003-09-29  Damien Sauveron  <sauveron-guest@acer>

	* src/readerfactory.c: Clean up 2 memory leaks

	* src/readerfactory.c:
	Clean up the mutex when a reader is removed if needed. This is a memory leak

	* src/readerfactory.h:
	Add a field needed for clean up the mutex when a reader is removed. This is needed since the support of simultaneous access to slots of a multi-slot reader or identical reader using the same ifdhandler

	* src/readerfactory.c:
	Correct a bug introduced by me and add a copyright.

2003-09-27  Ludovic Rousseau  <rousseau@acer>

	* src/Makefile.am, src/libmusclecard.pc.in, configure.in:
	add a new pkg-config file for application using libmusclecard. Closes
	"[ #300102 ] Should the pkgconfig file of 1.2.0-rc2 have -lmusclecard?"

2003-09-24  Damien Sauveron  <sauveron-guest@acer>

	* src/winscard_msg.c:
	Some clean up on the debug message and indentation.

	* src/winscard_svc.c: Move some code to a better position.

2003-09-23  Damien Sauveron  <sauveron-guest@acer>

	* src/winscard_msg.c: Some cleanups.

2003-09-23  Ludovic Rousseau  <rousseau@acer>

	* configure.in:
	--enable-libusb was not working correctly is the lib is not installed in
	/usr or /usr/local

2003-09-23  Damien Sauveron  <sauveron-guest@acer>

	* cvsroot/pcsclite/PCSC/src/winscard_scf.c:
	Solve the problem of never exiting the loop when a smartcard is already inserted in the reader, thus blocking the application.

2003-09-22  Ludovic Rousseau  <rousseau@acer>

	* src/readerfactory.c:
	initialize valueLength just before the call to IFDGetCapabilities().

	* src/readerfactory.c:
	initialize dwGetSize to the size of the value buffer before calling
	IFDGetCapabilities().

	* src/debuglog.c:
	use a local output buffer instead of a global one to be thread safe

2003-09-19  Ludovic Rousseau  <rousseau@acer>

	* configure.in:
	use AC_HELP_STRING() for a pretty look of `configure --help'

2003-09-18  Damien Sauveron  <sauveron-guest@acer>

	* src/readerfactory.c:
	Add the support of simultaneous access on different slots of a reader if the handling is thread safe.

	* src/PCSC/ifdhandler.h:
	Add the tag TAG_IFD_SLOT_THREAD_SAFE for testing if the handling of the slots is thread safe.

2003-09-17  Damien Sauveron  <sauveron-guest@acer>

	* src/readerfactory.c:
	Add a full clean up when there is no space for adding all the slots of a multi-slots reader.

	* src/readerfactory.c: Clean up in the RFRemoveReader.

2003-09-16  Antti Tapaninen  <aet-guest@acer>

	* src/Makefile.am: Put back -rdynamic to pcscd linking because of some
	IFD drivers. IMHO this is wrong, but what can you do.

	* configure.in: Put back AC_PROG_CPP, it has nothing to do with C++.

2003-09-16  Ludovic Rousseau  <rousseau@acer>

	* configure.in: remove useless AC_PROG_CPP (no C++ code in pcsc-lite)

	* configure.in, src/PCSC/pcsclite.h.in:
	-rc3 version (configure.in and src/pcsclite.h _shall_ be in sync)

	* configure.in, src/PCSC/pcsclite.h.in, src/hotplug_libusb.c:
	remove / at the end of usbdropdir, muscledropdir and ipcdir to be more
	homogeneous

2003-09-15  Damien Sauveron  <sauveron-guest@acer>

	* src/readerfactory.c:
	Add the support of simultaneous access on the thread safe IFD.

	* src/PCSC/ifdhandler.h:
	Add the tag TAG_IFD_THREAD_SAFE for testing if the IFD is thread safe.

2003-09-15  Antti Tapaninen  <aet-guest@acer>

	* README: Updates to requirements and tested platforms

2003-09-11  Damien Sauveron  <sauveron-guest@acer>

	* src/ifdwrapper.c: Better explanation of a comment.

	* src/readerfactory.c:
	Cleanup a condition unused and undo some of my previous changes.

2003-09-11  Antti Tapaninen  <aet-guest@acer>

	* aclocal/Makefile.am, aclocal/acx_pthread.m4, win32/Makefile.am:
	Add new files needed by the new bootstrap

	* build/acinclude.m4, build/acx_pthread.m4, build/install-sh, build/ltconfig, build/missing, build/mkinstalldirs, build/ylwrap:
	Remove build/ directory

	* Makefile.am, bootstrap, configure.in, reconf:
	- Simplify the bootstrapping mechanism
	- Remove reconf

	* config.h.in: Remove config.h.in, doesn't belong to the repository

	* win32/PCSC.dsp, win32/config.h, win32/win32_config.h:
	Rename win32_config.h to config.h

2003-09-10  Damien Sauveron  <sauveron-guest@acer>

	* src/readerfactory.c:
	Cleanup about variables already initialized and indent of some comments

	* src/PCSC/debuglog.h: Add a comment about the usage of DebugLogC

2003-09-08  Antti Tapaninen  <aet-guest@acer>

	* src/hotplug_macosx.c:
	Warning fix for PCSCLITE_HP_DROPDIR being already defined

	* src/dyn_unix.c:
	HP-UX build fix, add sanity checks to not to use dlfcn
	if there's native dynamic loading interface available,
	like HP-UX and MacOS X does.

	The other option would be just to merge all dynamic
	loading routines into one file, a lot simpler solution.

	* config.h.in: Bootstrap update

	* configure.in: Finish SCF build support, add sanity checks

	* src/Makefile.am: Add winscard_scf.c to EXTRA_DIST

	* cvsroot/pcsclite/PCSC/src/winscard_scf.c:
	Build fixes, add dummy SCardUnload()

	* config.h.in: Bootstrap update

	* configure.in, src/Makefile.am:
	- Make hotpluging / power management to compile again
	- Add MacOS X build fixes

	* src/hotplug_generic.c, src/hotplug_libusb.c, src/hotplug_linux.c, src/hotplug_macosx.c, src/powermgt_generic.c:
	Add necessary ifdef's

	* src/powermgt_macosx.c: Include hotplug.h to avoid warning message

	* doc/example/pcsc_demo.c, src/utils/bundleTool.c, src/utils/formaticc.c, src/utils/installifd.c:
	Build fix for MacOS X, don't bother including
	from <PCSC/..>, use standard header locations.

	* src/winscard_msg.c: Back out socklen_t change that I made

	* src/pcscdaemon.c: Very minor cleanups

	* src/thread_win32.c: Add missing config.h

	* configure.in:
	- Remove --with-common-dir and overly complex libsocket, libresolv
	  etc. probes that I added. Probe only for socket() in libsocket.
	- Reorder --disable-threadsafe code, needed to get over some
	  libtool issues for various platforms.

	* src/Makefile.am: Fix --disable-threadsafe issues

	* README: Don't mention -lposix4 for Solaris, AFAIK it's not needed
	anymore.

	* src/musclecard.c:
	Fix compiler warning when compiling with --disable-threadsafe

	* cvsroot/pcsclite/PCSC/src/winscard_scf.c, src/debuglog.c, src/dyn_win32.c, src/hotplug_libusb.c, src/hotplug_linux.c, src/ifdwrapper.c, src/pcscdaemon.c, src/testpcsc.c, src/tokenfactory.c, src/utils/formaticc.c, src/winscard.c, src/winscard_clnt.c, src/winscard_msg.c:
	AIX build fix, convert // comments into /* */ blocks.

2003-09-07  Ludovic Rousseau  <rousseau@acer>

	* src/musclecard.c, src/tokenfactory.c:
	remove useless \n in debug message strings

2003-09-07  Antti Tapaninen  <aet-guest@acer>

	* Makefile.am, configure.in, src/Makefile.am, src/debuglog.c, src/dyn_hpux.c, src/dyn_macosx.c, src/dyn_unix.c, src/dyn_win32.c, src/powermgt_generic.c, src/powermgt_macosx.c, src/sys_unix.c, src/winscard_msg.c:
	Build fixes. The first version that actually compiles for
	Linux, Solaris, Tru64 and AIX after src/Makefile.am and
	configure.in modifications.

	- Untested
	- No hotplug/power management support
	- Untested for *BSD, MacOS X and HP-UX,
	  there's other things to do before even
	  trying to compile.

	* cvsroot/pcsclite/PCSC/src/winscard_scf.c, src/PCSC/mscdefines.h, src/PCSC/musclecard.h, src/PCSC/pcsclite.h.in, src/PCSC/winscard.h, src/PCSC/wintypes.h, src/atrhandler.c, src/atrhandler.h, src/debuglog.c, src/dyn_hpux.c, src/dyn_macosx.c, src/dyn_unix.c, src/dyn_win32.c, src/eventhandler.c, src/hotplug_generic.c, src/hotplug_libusb.c, src/hotplug_linux.c, src/hotplug_macosx.c, src/musclecard.c, src/muscletest.c, src/powermgt_macosx.c, src/prothandler.c, src/readerfactory.c, src/sys_unix.c, src/testpcsc.c, src/thread_generic.h, src/thread_unix.c, src/tokenfactory.c, src/tokenparser.l, src/utils/bundleTool.c, src/utils/formaticc.c, src/utils/installifd.c, src/winscard.c, src/winscard_clnt.c, src/winscard_msg.c, src/winscard_svc.c:
	- Cleanups for #include logic and ordering,
	  it's better to include config.h first.

	* config.h.in, configure.in: Checkpoint commit + bootstrap update

	* src/Makefile.am, src/utils/Makefile.am, Makefile.am, doc/Makefile.am, doc/example/Makefile.am, etc/Makefile.am:
	- Polish and unify Makefiles a bit
	- More work towards working src/Makefile.am

	* pbx/config.h, src/Makefile.am, src/hotplug_libusb.c, src/pcscdaemon.c, src/tokenfactory.c, src/winscard_msg.c, win32/win32_config.h, config.h.in, configure.in, etc/Makefile.am:
	- Remove MSC/PCSC_TARGET_XYZ defines and the massive
	  use of unflexible automake conditionals. The main
	  reason why pcsc-lite requires "too much" work when
	  porting to another OS. Introduced define PCSC_ARCH,
	  which uses 'uname' as an input. Except Darwin->MacOS.
	- Removed --enable-usb
	- Preliminary rewrite of src/Makefile.am, doesn't work
	  yet.
	- Use gcc specific compiler options only if
	  gcc detected.

	* build/acx_pthread.m4: Merged some changes from OpenSC

	* src/Makefile.am, src/dyn_bsd.c, src/dyn_unix.c, src/dyn_win32.c, src/pcscdaemon.c, src/sys_generic.h, src/sys_hpux.c, src/sys_solaris.c, src/sys_unix.c, src/thread_generic.h, src/thread_macosx.c, src/thread_unix.c, src/thread_win32.c:
	- Removed most of the duplicated code, replaced
	  with the usage of config.h's defines for
	  portability issues:
	  - Merged dyn_{bsd,unix}.c, left as dyn_unix.c
	  - Merged thread_{macosx,unix}.c, left as thread_unix.c
	  - Merged sys_{hpux,solaris,unix}.c, left as sys_unix.c
	- Removed MSC_ thread API from generic / win32,
	  they're not used.

	Starting from now, the source tree might be broken for a
	few hours or even days. Sorry about that.

2003-09-05  Ludovic Rousseau  <rousseau@acer>

	* src/debuglog.c:
	add #include <unistd.h> to avoid an "implicit declaration of function `getpid'"

2003-09-04  Ludovic Rousseau  <rousseau@acer>

	* ChangeLog, configure.in, src/PCSC/pcsclite.h.in: release 1.2.0-rc2

	* src/Makefile.am: add thread_win32.c in the distribution

	* configure.in, src/Makefile.am:
	remove a _stupid_ bug that linked libpcsclite with libusb. Also generate
	libmusclecard and remove musclecard code from libpcsclite.

	* src/configfile.c, src/tokenparser.c:
	removed since they have nothing to do in CVS. They are generated from .l files

	* src/muscletest.c: add #include <string.h>

	* src/PCSC/winscard.h: add prototype for SCardUnload()

2003-09-03  Ludovic Rousseau  <rousseau@acer>

	* doc/example/pcsc_demo.c:
	add a call to SCardUnload(). This is not mandatory, just cleaner.

	* src/winscard_clnt.c:
	add SCardUnload() function to free allocated resources. It is mandatory
	only if you use dlopen/dlclose to often load/unload the library. Otherwise
	you will exhaust the ressources available and get a crash. Thanks to
	Guy Moreillon for the patch.

2003-09-02  Ludovic Rousseau  <rousseau@acer>

	* src/PCSC/debuglog.h:
	remove reference to USE_SYSLOG since it is replaced by --debug command
	line argument

2003-08-31  Ludovic Rousseau  <rousseau@acer>

	* README:
	remove documentation about --enable-syslog since it is not used anymore
	by ./configure

	* NEWS: refer to ChangeLog instead of containing the version number

2003-08-29  David Corcoran  <corcoran-guest@acer>

	* COPYING: Removed advertising clause

2003-08-28  Ludovic Rousseau  <rousseau@acer>

	* src/muscletest.c:
	use CAPITAL hex, use default PIN "Muscle00" when none is given, allow to
	use more than one readers instead of using only the first one.

	* src/musclecard.c: print SW (status word) in hex instead of decimal

	* src/Makefile.am:
	add rules to build muscletest. testpcsc is no more executed by make distcheck

	* doc/Makefile.am:
	do not distribute pcscd.8 bundleTool.8 since they are generated from the
	.in versions by ./configure

	* configure.in:
	to not set use_libusb=false in case the argument is "" | "yes" | "YES"

	* Makefile.am:
	move ChangeLog.cvs to DISTCLEANFILES to avoid an error with 'make distcheck'

2003-08-26  Ludovic Rousseau  <rousseau@acer>

	* ChangeLog: release 1.2.0-rc1

	* configure.in: move addition of -lusb since it is selected by default.

	* src/hotplug_libusb.c: disable USB debug by default

	* README: add a note about deprecation of --enable-usb

	* configure.in:
	--enable-usb is deprecated and off by default. Use --enable-libusb instead.

	* doc/Makefile.am: add example subdirectory

	* src/hotplug_libusb.c:
	complete redesign to support up to PCSCLITE_MAX_READERS readers whatever
	the driver they use (correct bug [ #300067 ] More than 4 Hotplug Readers in
	the same time on Linux)

	* src/PCSC/pcsclite.h.in:
	define PCSCLITE_MAX_READERS as the maximum number of readers

2003-08-25  Ludovic Rousseau  <rousseau@acer>

	* src/winscard.c:
	correct bug #300063: PCSCd reports card is present when there is no card in the reader.

	* src/musclecard.c: reindentation

	* src/musclecard.c:
	free(evlist->tokenArray), avoid a memory leak (Toni Andjelkovic)

2003-08-22  Ludovic Rousseau  <rousseau@acer>

	* doc/example/Makefile.am, doc/example/pcsc_demo.c:
	demo of a C program using the pcsc-lite API

2003-08-21  Ludovic Rousseau  <rousseau@acer>

	* src/hotplug_libusb.c, src/hotplug_linux.c: typo in comments

2003-08-20  Ludovic Rousseau  <rousseau@acer>

	* src/winscard_svc.c:
	Sometimes unknown APDUs were being transmitted when 'SCardStatus'
	function was invoked (close #300061)

	* src/winscard.c:
	return SCARD_E_INVALID_PARAMETER for APDU of less than 4 bytes (close #300062)

	* src/musclecard.c:
	initialise pConnection->shareMode as early as possible (close #300064,
	thanks to Wan-Teh Chang)

	* src/PCSC/wintypes.h:
	correct and remove unused types (close bug #300071)

	* src/hotplug_macosx.c:
	Add support of reader aliases using <array></array>

	* src/hotplug_libusb.c: add empty HPRegisterForHotplugEvents() function

2003-08-19  Ludovic Rousseau  <rousseau@acer>

	* src/hotplug.h, src/hotplug_generic.c, src/hotplug_linux.c, src/hotplug_macosx.c, src/pcscdaemon.c, src/powermgt_macosx.c:
	Add support of PCMCIA for MacOS X and major redesign of the hotplug
	support (thanks to Stephen M. Webb for the patch)

	* src/eventhandler.c: use <errno.h> instead of <sys/errno.h>

2003-08-18  Ludovic Rousseau  <rousseau@acer>

	* src/hotplug_libusb.c:
	use #ifdef DEBUG_USB_HOTPLUG for USB debug messages

	* src/pcscdaemon.c: remove unneeded \n in debug messages

	* src/PCSC/pcsclite.h.in:  #include <wintypes.h> even on MacOS X

	* src/PCSC/winscard.h:
	do not look for PCSC/pcsclite.h but pcsclite.h even on MacOS X

	* src/debuglog.c:
	add #include <sys/types.h> for FreeBSD (thanks Toni Andjelkovic)

2003-08-15  Ludovic Rousseau  <rousseau@acer>

	* src/PCSC/musclecard.h, src/musclecard.c:
	add void argument to the MSCCallbackCancelEvent() prototype definition
	(thanks to Toni Andjelkovic)

	* configure.in:
	use *linux* instead of linux-gnu (patch from Toni Andjelkovic)

	* src/hotplug_libusb.c:
	conditionnaly print hotplug debug messages. look for DEBUG_USB_HOTPLUG at the
	begining of the file.

	* src/hotplug_linux.c:
	use FILENAME_MAX instead of manually defined values. Use snprintf()
	instead of sprintf() to fill filenames.

2003-08-14  Ludovic Rousseau  <rousseau@acer>

	* Makefile.am: add s/David Corcoran /David Corcoran /;

	* config.h.in: new generated version

	* bootstrap: do not remove build/aclocal.m4 anymore

	* src/Makefile.am: add parser.h in pcscd_SOURCES

	* src/utils/installifd.c:
	cast sizeof() with (int) to avoid a warning under MacOS X

	* src/pcscdaemon.c:
	add "Copyright (C) 2001-2003 by Ludovic Rousseau" for the version (-v) output.

2003-08-11  Ludovic Rousseau  <rousseau@acer>

	* src/tokenparser.c: regenerated but should not be in CVS

	* src/tokenparser.l: change filename in comment

	* src/PCSC/parser.h: add LTPBundleFindValueWithKey() function prototype

	* src/PCSC/parser.h:
	use a size of 200 bytes instead of 256 otherwise it will break every
	drivers using the pcscd tokenparser (buffer overflow in the driver).

2003-08-10  Ludovic Rousseau  <rousseau@acer>

	* README, configure.in, src/Makefile.am, src/hotplug_libusb.c:
	add support of libusb

	* src/PCSC/parser.h, src/tokenparser.l:
	define maximum buffer lengths and avoid possible buffer overflows

2003-08-08  Ludovic Rousseau  <rousseau@acer>

	* doc/formaticc.1: pcscd is in section 8 not 1

2003-07-04  Ludovic Rousseau  <rousseau@acer>

	* src/Makefile.am:
	Installation of the pkgconfig file did not honor libdir. Thanks to Ville
	Skyttä for the patch (alioth patch #300045)

2003-06-05  David Corcoran  <corcoran-guest@acer>

	* src/thread_generic.h, src/thread_win32.c:
	fixed MSC_Mutex functions to point to the SYS_Mutex functions

2003-06-04  David Corcoran  <corcoran-guest@acer>

	* src/PCSC/debuglog.h, src/PCSC/musclecard.h, src/PCSC/pcsclite.h.in, src/debuglog.c, src/musclecard.c, src/thread_generic.h, src/thread_win32.c, src/tokenfactory.c, src/tokenparser.c, win32/PCSC.cpp:
	Commiting these files

2003-05-30  Ludovic Rousseau  <rousseau@acer>

	* ChangeLog: release 1.1.2beta5

	* bootstrap:
	remove $ac_aux_dir/aclocal.m4 after use to limit the size of the .tar.gz

	* src/Makefile.am:
	remove winscard_msg.c from pcscd_SOURCES since it is already included
	in libpcsclite_core_la_SOURCES used by pcscd_LDADD

	* build/install-sh, build/missing, build/mkinstalldirs:
	new version from automake 1.7.5

	* doc/Makefile.in: removed since generated from doc/Makefile.am

	* Makefile.am:
	the CVS files are now on alioth.debian.org so change the path to remove
	to generate the ChangeLog.cvs file

	* src/winscard_clnt.c:
	SCardStatusTH(): simplify code and return correct results when buffers
	are too short or NULL is used

	* src/winscard.c: SCardStatus(): do not return before filling buffers

	* src/musclecard.c: small cleanup

	* doc/Makefile.in:
	removed from CVS since generated from doc/Makefile.am

	* src/configfile.c, src/tokenparser.c:
	regenerated but they should not be in CVS

	* src/tokenparser.l: define ret as int

	* src/Makefile.am: correct arguments order of ylwrap script

	* src/utils/installifd.c:
	replace gets() by fgets() to avoid buffer overflow.
	Use sizeof() instead of constants.
	do not use strdup() since it is useless.
	print error messages when needed.

2003-05-28  Ludovic Rousseau  <rousseau@acer>

	* src/libpcsclite.pc.in:
	used to generated a pkg-config ".pc" file (thanks to Andreas Jellinghaus
	for the idea and the patch)

	* Makefile.in, build/aclocal.m4, build/config.guess, build/config.sub, build/ltmain.sh, configure, etc/Makefile.in, src/Makefile.in, src/utils/Makefile.in:
	removed from CVS since they are (re)generated by ./bootstrap

	* configure.in, src/Makefile.am, src/utils/installifd.c:
	use directory names as use by ./configure

2003-05-27  Ludovic Rousseau  <rousseau@acer>

	* src/driverparser.c, src/driverparser.l:
	no more useful since tokenparser.* does a better job

	* src/tokenparser.l: do not duplicate fclose/return lines

2003-05-25  Ludovic Rousseau  <rousseau@acer>

	* etc/reader.conf.in:
	include configured path appear in the docs (thanks to Ville Skyttä)

	* doc/bundleTool.8.in, doc/pcscd.8.in:
	correct typos and include configured path appear in the docs (thanks to
	Ville Skyttä)

2003-05-05  Ludovic Rousseau  <rousseau@acer>

	* ChangeLog: release 1.1.2beta4

	* src/configfile.c: regenerated from src/configfile.c

	* src/utils/Makefile.in, Makefile.in, configure, doc/Makefile.in, etc/Makefile.in, src/Makefile.in:
	regenerated

	* src/tokenparser.c: regeneration from src/tokenparser.l

	* src/tokenparser.l:
	code reindentation, use DebugLogB()/DebugLogC with correct number of
	arguments

	* src/debuglog.c:
	avoid possible buffer overflow in pcsc_stringify_error()

	* src/Makefile.am:
	add -pthread for xBSD, use AM_CFLAGS instead of CFLAGS, driverparser.c
	no more exists

	* bootstrap: use automake 1.7.3

	* README: also tested on Debian 3.0 and OpenBSD 3.2

2003-04-07  Ludovic Rousseau  <rousseau@acer>

	* src/tokenparser.l:
	reindent, use DebugLogB instead of DebugLogC, add indice number in debug
	message

	* src/hotplug_linux.c: support driver aliases in Info.plist

	* src/hotplug_linux.c: use LTPBundleFindValueWithKey(.., 0) instead of
	LCFBundleFindValueWithKey()

	* src/hotplug_linux.c: reindent

	* src/hotplug_linux.c: code simplification

	* src/hotplug_linux.c: add directory name to error message

2003-01-09  Ludovic Rousseau  <rousseau@acer>

	* src/debuglog.c:
	the log output mode (syslog, stdout, stderr) can't be combined. stderr
	had precedence (in the code) over stdout that was _never_ used.

2002-12-08  Ludovic Rousseau  <rousseau@acer>

	* src/PCSC/pcsclite.h.in:
	use pcscd.* instead of pcsc.* to be unoform with pcscd.pid

2002-12-07  Ludovic Rousseau  <rousseau@acer>

	* doc/Makefile.am: remove pcscd.startup since it is now in etc/

	* ChangeLog: release 1.1.2beta3

	* Makefile.in, config.h.in, configure, doc/Makefile.in, etc/Makefile.in:
	regenerated

	* src/utils/Makefile.in, src/Makefile.in: regenarated

	* src/pcscdaemon.c:
	create PCSCLITE_IPC_DIR if it does not exist. For example when it is set
	to /tmp/pcsc/ (default now is /var/run/)

	* src/PCSC/pcsclite.h.in: use pcsc.comm instead of pcsc.omm

	* doc/pcscd.startup: removed. The startup script is in etc/

	* src/eventhandler.c: small source code reformating

	* src/musclecard.c, src/tokenfactory.c, src/tokenparser.c:
	use DebugLogB() for logs with 2 parameters and not DebugLogC()

	* src/PCSC/debuglog.h:
	DebugLogC() uses 3 parameters not 2 (use DebugLogB() for that)

	* src/eventhandler.c:
	add filename and error message to error logs for /var/run/pcsc.pub

	* src/PCSC/pcsclite.h.in, src/pcscdaemon.c:
	add support of --enable-ipcdir=DIR

	* src/Makefile.am:
	reorganise conditionals to to have a src/Makefile.in file 142 (yes 142) times
	smaller (33 KB instead of 4.7 MB)

	* etc/Makefile.am: also distribute etc/pcscd.startup

	* configure.in: update to autoconf 2.56 (lot of changes).
	add --enable-ipcdir=DIR option. Default is now /var/run/ instead of /tmp/pcsc/

	* bootstrap: update for autoconf 2.57 and automake 1.6.3

	* Makefile.am: add win32/ files and some rework

2002-12-06  Ludovic Rousseau  <rousseau@acer>

	* src/winscard.c: accept pioRecvPci == NULL in SCardTransmit()

	* src/winscard_clnt.c: source code reformating

	* src/winscard_clnt.c: correct an overflow in SCardGetStatusChange()
	replace "if (cReaders > PCSCLITE_MAX_CONTEXTS)" by
	"if (cReaders >= PCSCLITE_MAX_CONTEXTS)". Thanks to Michael Nidd

	* src/winscard_clnt.c: init g_rgSCard??Pci variable at compile time

2002-12-04  Ludovic Rousseau  <rousseau@acer>

	* ChangeLog: add Dmitry Djachenko pacthes

2002-12-02  David Corcoran  <corcoran@acer>

	* src/debuglog.c, src/musclecard.c, src/pcscdaemon.c, src/utils/bundleTool.c, Makefile.in, build/aclocal.m4, config.h.in, configure, configure.in, doc/Makefile.in, src/Makefile.am, src/Makefile.in:
	Included changes from Citrix
	 - Support for AIX in configure.in and Makefile.am
	 - added ifdef for SNPRINTF and VSNPRINTF

2002-11-29  Ludovic Rousseau  <rousseau@acer>

	* src/winscard.c: code reformatting

	* src/winscard.c: initialise g_rgSCard??Pci globals at compile time

	* src/winscard.c: SCardStatus(): set more return values

	* src/winscard.c:
	Check reader name and ATR size are correct (no buffer oveflow)

	* src/winscard.c: check pioRecvPci is non NULL before assignment

	* src/winscard.c: SCardReconnect() returns more interesting error codes

2002-10-30  Ludovic Rousseau  <rousseau@acer>

	* src/prothandler.c, src/prothandler.h:
	PHSetProtocol() returns a DWORD and not a UCHAR since
	rContext->dwProtocol is a DWORD. Thanks to Oleg Makarenko.

	* src/atrhandler.c, src/eventhandler.c, src/prothandler.c, src/winscard.c:
	include some missing .h files. Thanks to Oleg Makarenko

2002-10-16  David Corcoran  <corcoran@acer>

	* etc/SmartcardServices, pbx/config.h: some changes for the Mac

2002-10-15  David Corcoran  <corcoran@acer>

	* src/utils/Makefile.in, ChangeLog, Makefile.in, build/aclocal.m4, config.h.in, configure, configure.in, doc/Makefile.in, etc/Makefile.in, src/Makefile.am, src/Makefile.in:
	Some changes to make SCF easier to use

2002-10-12  Ludovic Rousseau  <rousseau@acer>

	* bootstrap:
	use autoconf instead of autoreconf to not reuse an old config

	* src/utils/Makefile.in, Makefile.in, build/aclocal.m4, configure, doc/Makefile.in, etc/Makefile.in, src/Makefile.in:
	new version of autoregenerating files

	* ChangeLog: release 1.1.2beta2

2002-10-08  Ludovic Rousseau  <rousseau@acer>

	* src/Makefile.am:
	do not link with -lpthread under bsd as it breaks under OpenBSD and
	FreeBSD

	* configure.in:
	use "test x${usbdropdir} = xfalse" instead of "test x${usbdropdir} ==
	xfalse" since it generates an error under FreeBSD (test: xfalse:
	unexpected operator). For a strange reason the bug was not detected
	earlier.

2002-10-06  Ludovic Rousseau  <rousseau@acer>

	* src/Makefile.am:
	use -rdynamic instead of -Wl,--export-dynamic since some systems
	(OpenBSD) did not support it

	* src/pcscdaemon.c: add --apdu documentation in --help message
	support -a argument even when HAVE_GETOPT_LONG not supported

	* src/utils/formaticc.c:
	add a (char *) cast to avoid a compilation warning

2002-10-06  Jean-Luc Giraud  <giraud@acer>

	* etc/SmartcardServices:
	Added support for start/stop/restart invocation parameters

	* pbx/config.h:
	Added #define for support of /var/run/pid. pid file is /var/run/pcscd.pid

2002-10-06  Ludovic Rousseau  <rousseau@acer>

	* src/utils/Makefile.in, src/Makefile.in, etc/Makefile.in, doc/Makefile.in, build/aclocal.m4, Makefile.in, config.h.in, configure, stamp-h.in:
	new version of autoregenerating files

	* src/Makefile.am:
	add -DPACKAGE and -DVERSION to compilation flags. They are no more
	included in config.h

	* configure.in: change version from 1.1.2beta1 to 1.1.2

	* bootstrap: remove config.h.in to be sure to regenerate it

2002-10-05  Ludovic Rousseau  <rousseau@acer>

	* src/PCSC/pcsclite.h.in:
	change VERSION number from 1.1.2beta1 to 1.1.2

	* ChangeLog:
	print an error message if the --debug argument is not known

2002-10-04  David Corcoran  <corcoran@acer>

	* cvsroot/pcsclite/PCSC/src/winscard_scf.c: quick fix

	* cvsroot/pcsclite/PCSC/src/winscard_scf.c: added scf compatibility

	* src/PCSC/wintypes.h: added helge's fix to WORD

	* src/powermgt_macosx.c: fix for osx deadlock on sleep

2002-10-03  David Corcoran  <corcoran@acer>

	* src/hotplug_linux.c: some changes to support multiplle usb readers

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

	* src/hotplug_linux.c:
	close PCSCLITE_HP_DROPDIR (/usr/local/pcsc/drivers/) after use

2002-10-03  David Corcoran  <corcoran@acer>

	* src/winscard.c: added fix by amira

2002-10-02  David Corcoran  <corcoran@acer>

	* src/tokenfactory.c: added default dropdir

	* src/winscard.c, src/Makefile.in:
	added athena patch for SCARD_PROTOCOL_ANY in SCardConnect

	* src/eventhandler.c, src/readerfactory.c:
	Fixed multi-reader + sleep problem

	* Makefile.in, build/aclocal.m4, config.h.in, configure, doc/Makefile.in, src/Makefile.in:
	Re-importing autoconf stuff

2002-10-02  Jean-Luc Giraud  <giraud@acer>

	* pbx/config.h, src/readerfactory.c:
	Modified version number from 1.1.0 to 1.1.1

2002-09-07  Ludovic Rousseau  <rousseau@acer>

	* src/pcscdaemon.c:
	Log to stderr by default. Print an error message if --debug argument is
	not known.

2002-09-06  Ludovic Rousseau  <rousseau@acer>

	* configure.in, src/PCSC/pcsclite.h.in: release 1.1.2beta1

	* ChangeLog:
	forgot to add support of --enable-muscledropdir in bundleTool.c

	* src/utils/bundleTool.c, src/tokenfactory.c:
	add support for --enable-muscledropdir

	* build/aclocal.m4, build/config.guess, build/config.sub, build/install-sh, build/ltmain.sh, build/missing, build/mkinstalldirs, build/ylwrap:
	new versions

	* reconf: do not restart ./configure

	* configure.in: add support for --enable-muscledropdir

	* bootstrap: test if a Makfile exists before make distclean

	* README:
	The licence file is COPYING and not LICENSE (thanks to Juha Tuomala)

2002-08-18  Ludovic Rousseau  <rousseau@acer>

	* doc/Makefile.am, doc/Makefile.in, doc/formaticc.1:
	add formaticc.1 from Debian

2002-08-16  Ludovic Rousseau  <rousseau@acer>

	* src/pcscdaemon.c: typo (add a space)

2002-08-15  Ludovic Rousseau  <rousseau@acer>

	* src/utils/formaticc.c: lots of debug and buffer overflow removal

	* src/utils/bundleTool.c: print usage in cas of wrong arguments

	* doc/Makefile.am, doc/Makefile.in, doc/bundleTool.1, doc/bundleTool.8.in:
	update and rename bundleTool.1

2002-08-13  Ludovic Rousseau  <rousseau@acer>

	* configure.in, src/PCSC/pcsclite.h.in:
	switch from version 1.1.1 to 1.1.2 for cvs snapshots

	* src/Makefile.am, src/Makefile.in:
	add -Wl,--export-dynamic link option

	* src/musclecard.c: add a return NULL;

	* src/ifdwrapper.c: add support for --apdu

	* src/PCSC/debuglog.h, src/debuglog.c:
	add support for --apdu and other same log messages

	* src/pcscdaemon.c:
	add support for --apdu, test if the pcscd is still running before
	complaining that /tmp/pcsc is present

	* src/readerfactory.c: properly initialise rv

	* src/eventhandler.c: typo

	* doc/pcscd.8.in: add the -a|--apdu option + some cleaning

	* reconf: make distclean before autoreconf

	* reconf: *** empty log message ***

	* configure.in, src/hotplug_linux.c:
	set the PCSCLITE_HP_DROPDIR as a ./configure option

2002-07-30  Ludovic Rousseau  <rousseau@acer>

	* src/musclecard.c:
	add #ifdef USE_THREAD_SAFETY otherwise it wont compile with
	--disable-threadsafe

2002-07-01  David Corcoran  <corcoran@acer>

	* doc/pcscd.startup: readding

	* doc/pcscd.startup, etc/pcscd.startup: moved location

2002-06-27  David Corcoran  <corcoran@acer>

	* src/musclecard.c, src/tokenfactory.c, win32/PCSC.dsp: Win32

2002-06-19  David Corcoran  <corcoran@acer>

	* src/readerfactory.c: removed printf

2002-06-18  David Corcoran  <corcoran@acer>

	* src/PCSC/musclecard.h: MSCPUChar8 -> MSCUChar8

2002-06-11  David Corcoran  <corcoran@acer>

	* src/PCSC/musclecard.h: Added more Initialization parameters ...

2002-06-05  David Corcoran  <corcoran@acer>

	* src/musclecard.c: hello

	* src/musclecard.c: ;lkj

	* src/musclecard.c: bad if then

	* src/musclecard.c: some changes

	* src/musclecard.c, src/thread_generic.h, src/thread_macosx.c, src/thread_unix.c:
	Added generic thread support to musclecard.c and added pthread_join

	* src/musclecard.c: Added join to cancelcallback

	* COPYING, ChangeLog, NEWS, README:
	Fixed problem with MSC_SHARE_DIRECT connections
	Added changes to docs
	Cancel with join

	* src/PCSC/pcsclite.h.in, Makefile.in, build/aclocal.m4, configure, configure.in, doc/Makefile.in, src/Makefile.in:
	Changed versioning

	* src/winscard_clnt.c: removed unused variable i

	* src/readerfactory.c:
	Fix for bug which wouldn't work with multi-slot readers.  Slots weren't managing the dwFeeds variable in the structure so the library was closed prematurely.

2002-06-03  David Corcoran  <corcoran@acer>

	* src/readerfactory.h:
	replaced magic number with constant 16->PCSCLITE_MAX_CONTEXTS

2002-05-31  David Corcoran  <corcoran@acer>

	* src/winscard_clnt.c:
	Removed bug: line 1986 SCardCleanupClient would release the socket too early

2002-05-28  David Corcoran  <corcoran@acer>

	* doc/muscle-api-1.3.0.pdf: Added muscle-docs

	* AUTHORS, ChangeLog, Makefile.in, NEWS, README, SECURITY, build/aclocal.m4, configure, configure.in, doc/Makefile.am, doc/Makefile.in, doc/pcscd.startup, etc/SmartcardServices, etc/StartupParameters.plist, src/Makefile.am, src/Makefile.in:
	Finalizing for the release

	* src/utils/formaticc.c: Added wintypes.h

	* Makefile.in, build/aclocal.m4, build/ltmain.sh, doc/Makefile.in, src/Makefile.am, src/Makefile.in:
	fixes for the build

2002-05-28  phuang  <phuang@acer>

	* src/dyn_hpux.c: hpux need <errno.h> to compile correctly

2002-05-21  Ludovic Rousseau  <rousseau@acer>

	* Makefile.am:
	patch the generated ChangeLog.cvs to have correct file and author names

2002-05-10  Ludovic Rousseau  <rousseau@acer>

	* src/Makefile.am:
	added the .h files in the distibution but they will not be installed by
	a 'make install'
	So now 'make test' and 'make testcheck' should work again.
	Sorry Dave for my mistake in v1.3 you corrected in v1.4. I hope it is OK
	this time.

	* doc/Makefile.am: add pcscd.startup in the distribution

2002-05-07  David Corcoran  <corcoran@acer>

	* src/utils/Makefile.in, Makefile.in, build/aclocal.m4, configure, configure.in, doc/Makefile.in, etc/Makefile.in, src/Makefile.in:
	Updated version to 1.1.0

	* etc/Makefile.in, doc/Makefile.in, Makefile.in, config.h.in, configure, configure.in:
	Fixing so that --disable-threadsafe works !!!

	* src/utils/Makefile.in, src/Makefile.am, src/Makefile.in:
	Adding Makefile.am with -lpthread for PCSCD_INCLUDE_LIBS

	* src/dyn_win32.c: Added Win32 dynamic lib loading

2002-05-06  David Corcoran  <corcoran@acer>

	* src/musclecard.c:
	Added real time card reset/removed checking.  Fixed bug which begin/end transaction would not return this.

	* win32/PCSC.dsp, win32/PCSC.h, win32/StdAfx.cpp, win32/StdAfx.h, win32/pthread.h, win32/sched.h, win32/win32_config.h, win32/win32_pcsclite.h, src/PCSC/mscdefines.h, src/PCSC/musclecard.h, src/debuglog.c, src/musclecard.c, src/thread_unix.c, src/tokenfactory.c, src/tokenparser.c, win32/PCSC.cpp:
	Added support for Win32 based platforms for Muscle Framework.

	* pcsc.pbproj/project.pbxproj:
	Checking in new project file for project builder

2002-05-06  Chris Osgood  <oznet@acer>

	* src/dyn_win32.c: New file.

	* src/dyn_win32.c: Win32 updates

	* win32/PCSC.cpp, win32/PCSC.dsp, win32/PCSC.h, win32/StdAfx.cpp, win32/StdAfx.h, win32/pthread.h, win32/sched.h, win32/win32_config.h, win32/win32_pcsclite.h:
	New file.

	* src/PCSC/mscdefines.h, src/PCSC/musclecard.h, src/debuglog.c, src/musclecard.c, src/thread_unix.c, src/tokenfactory.c, src/tokenparser.c, win32/PCSC.cpp, win32/PCSC.dsp, win32/PCSC.h, win32/StdAfx.cpp, win32/StdAfx.h, win32/pthread.h, win32/sched.h, win32/win32_config.h, win32/win32_pcsclite.h:
	Win32 updates

2002-04-27  David Corcoran  <corcoran@acer>

	* pcsc.pbproj/project.pbxproj, src/hotplug_macosx.c:
	Added versioning to pbxproj file, updated config.h.  Fixed Plugin->PlugIn.h in hotplug

2002-04-26  David Corcoran  <corcoran@acer>

	* doc/pcscd.8.in: Updated the man page

2002-04-25  David Corcoran  <corcoran@acer>

	* pcsc.pbproj/project.pbxproj:
	Added bundle header information for buildit

	* pbx/config.h, src/PCSC/pcsclite.h.in, src/pcscdaemon.c:
	Added new version numbering

	* src/eventhandler.c, src/readerfactory.c:
	removed printf debugging for release

	* src/hotplug_macosx.c, src/powermgt_macosx.c:
	Changes to the power management behavior

2002-04-24  David Corcoran  <corcoran@acer>

	* pbx/PCSC.pbproj/project.pbxproj: Removal

	* pcsc.pbproj/project.pbxproj, src/eventhandler.c, src/hotplug_macosx.c, src/powermgt_macosx.c, src/readerfactory.c, src/readerfactory.h, src/winscard.c:
	moved project builderstuff and removed some files

	* pbx/PCSC.pbproj/project.pbxproj, src/PCSC/musclecard.h, src/musclecard.c, src/muscletest.c, src/powermgt_macosx.c:
	changes

2002-04-23  David Corcoran  <corcoran@acer>

	* pbx/PCSC.pbproj/project.pbxproj, src/eventhandler.c, src/hotplug_macosx.c, src/pcscdaemon.c, src/powermgt_generic.h, src/powermgt_macosx.c, src/readerfactory.c, src/readerfactory.h:
	No changes, just time/date issues

2002-04-22  David Corcoran  <corcoran@acer>

	* pbx/PCSC.pbproj/project.pbxproj, pbx/config.h, src/PCSC/mscdefines.h, src/PCSC/pcsclite.h.in, src/PCSC/winscard.h, src/sys_generic.h, src/sys_hpux.c, src/sys_solaris.c, src/sys_unix.c, src/winscard_msg.c, src/winscard_svc.c:
	config.h -> added cvs to version
	project.pbx -> modified project builder attributes
	pcsclite.h -> __APPLE__
	mscdefines.h -> __APPLE__
	sys_generic.h, sys_hpux.c sys_solaris.c sys_unix.c
	int SYS_Exit to void SYS_Exit
	winscard_msg.c removed message in CommonSegment

2002-04-21  Carlos Prados  <cprados@acer>

	* configure.in, src/pcscdaemon.c:
	Added autoconf check for getopt.h header

2002-04-16  David Corcoran  <corcoran@acer>

	* src/pcscdaemon.c: Added #ifdef around #include <getopt.h>

2002-04-14  Carlos Prados  <cprados@acer>

	* configure.in: Added getopt_long() check.

	* src/pcscdaemon.c:
	Added getopt and getopt_long support for command line parsing.

2002-04-12  David Corcoran  <corcoran@acer>

	* src/musclecard.c: Added wait for thread return for the callback

	* src/PCSC/musclecard.h, src/musclecard.c:
	Added BLOCKSTATUS defines and checks in the Callbacks so that the
	race condition would go away.

	* src/PCSC/musclecard.h: Removed MSCCertInfo

2002-04-11  David Corcoran  <corcoran@acer>

	* src/PCSC/mscdefines.h: removed cert function pointers

	* src/tokenfactory.c: removed certificate function pointers

	* src/PCSC/musclecard.h, src/musclecard.c:
	Removed all certificate handling functions

2002-04-10  David Corcoran  <corcoran@acer>

	* src/pcscdaemon.c: Added extern int errno - wouldn't build on Solaris

	* src/winscard_clnt.c:
	Removed atexit() put cleanup code in SCardReleaseContext

	* src/musclecard.c: some modifications for tabs.

	* src/ifdwrapper.c:
	Removed SetCapabilities -> put into 1.0 version for performance reasons

	* src/PCSC/musclecard.h, src/musclecard.c:
	Removed extra Read/Write functions

2002-04-09  David Corcoran  <corcoran@acer>

	* src/PCSC/musclecard.h, src/musclecard.c:
	Added keyPartner to MSCImportKey.  Added keyMapping to MSCKeyInfo structure

2002-04-08  David Corcoran  <corcoran@acer>

	* src/PCSC/pcsclite.h.in, src/pcscdaemon.c, src/readerfactory.c, src/readerfactory.h, src/winscard_clnt.c, src/winscard_svc.c, Makefile.in, build/aclocal.m4, configure, src/Makefile.am, src/Makefile.in:
	Fixed a security vulnerability in winscard_svc.c.  Removed /tmp/pcsc/.pcsctmp
	and replaced it with a stat /tmp/pcsc on the client side.  Modified Makefile.am
	to only install needed include files to /usr/local/include

2002-04-08  Michael Gile  <mikeg@acer>

	* src/readerfactory.c:
	initialized return value to -1 in RFSetReaderName

2002-04-07  Ludovic Rousseau  <rousseau@acer>

	* src/PCSC/pcsclite.h.in, src/pcscdaemon.c, src/readerfactory.c:
	Allow pcscd to do bulk transfers for devices with high speed:

	 Enhanced messaging has been added to accomodate newer devices which
	have more advanced capabilites, such as dedicated secure co-processors
	which can stream and encrypt data over USB.  In order to used enhanced
	messaging you must define PCSCLITE_ENHANCED_MESSAGING in the
	framework(library), the daemon, and your application

	Thanks to Michael Gile <mgile@mac.com> for the patch

2002-04-06  Ludovic Rousseau  <rousseau@acer>

	* AUTHORS: Added my name as suggested by David

	* src/pcscdaemon.c:
	using -d1 (debug to stderr) or -d2 (debug to stdout) also activate the
	-fg option (foreground). Otherwise pcscd is started as a daemon
	(default) and stdout and stderr file descriptors are closed and then
	debug is useless since sent to /dev/null

	* src/PCSC/pcsclite.h.in, configure.in:
	renamed 1.0.2.beta5 to 1.0.2.cvs

	* Makefile.am: make the ChangeLog.cvs rule .PHONY

	* src/pcscdaemon.c, src/sys_generic.h, src/sys_hpux.c, src/sys_solaris.c, src/sys_unix.c, src/winscard_clnt.c, src/winscard_msg.c:
	use SYS_CloseFile() instead of close()
	use SYS_OpenFile() instead of open()
	use SYS_Chdir() instead of chdir()
	use SYS_Daemon() instead of daemon()
	test return values and print a debug message when necessary

	patch provided by Toni Andjelkovic <toni@soth.at>

	* Makefile.am: add a rule to create ChangeLog.cvs

	* src/utils/bundleTool.c:  #include <stdlib.h> for malloc() declaration

	* src/pcscdaemon.c:
	add error code management for SHMProcessEvents returned value

2002-04-05  Ludovic Rousseau  <rousseau@acer>

	* configure.in: correct text alignment

	* doc/Makefile.in, etc/Makefile.in, src/utils/Makefile.in:
	removed since generated automatically by automake

	* src/atrhandler.c:
	USE_SYSLOG is no more used. code rewrote with debug_msg()

	* src/debuglog.c: debug_xxd(): also use the debug_msg_type way

	* config.h.in:
	removed since generated automatically from configure.in by autoheader

2002-04-04  Ludovic Rousseau  <rousseau@acer>

	* Makefile.in, src/Makefile.in:
	removed since automatically generated from Makefile.am

	* src/pcscdaemon.c, src/winscard_msg.c:
	src/winscard_msg.c: SHMProcessEvents() timeout on the select and go back
	into src/pcscdaemon.c: SVCServiceRunLoop()
	This is used to catch the Ctrl-C signal (in SVCServiceRunLoop) at some
	time when nothing else happens

	* src/dyn_unix.c:
	removed dlerror() from if tests since it is not the best way to test for
	errors

	* src/dyn_bsd.c:
	DYN_GetAddress() now correctly handles errors by not using dlerror() to
	know if an error occured since the error may have occured in a previous
	call
	Also removed dlerror() from if tests everywhere else

	* src/Makefile.am:
	add many .h files in include_HEADERS so that 'make dist' include all the
	useful files
	add muscletest.c in EXTRA_libpcsclite_core_la_SOURCES

2002-04-04  David Corcoran  <corcoran@acer>

	* src/musclecard.c:
	Some event changes, begin/end transaction.  Added IdentifyToken

2002-04-04  Ludovic Rousseau  <rousseau@acer>

	* src/utils/bundleTool.c:
	removed unused variable char tempString[1024];
	add a return 0 for main()

	* src/PCSC/debuglog.h, src/PCSC/ifdhandler.h, src/PCSC/mscdefines.h, src/PCSC/musclecard.h, src/PCSC/pcsclite.h.in, src/PCSC/winscard.h, src/PCSC/wintypes.h, src/atrhandler.c, src/atrhandler.h, src/configfile.c, src/configfile.h, src/debuglog.c, src/driverparser.c, src/dyn_bsd.c, src/dyn_generic.h, src/dyn_hpux.c, src/dyn_macosx.c, src/dyn_unix.c, src/eventhandler.c, src/eventhandler.h, src/hotplug.h, src/hotplug_generic.c, src/hotplug_linux.c, src/hotplug_macosx.c, src/ifdwrapper.c, src/ifdwrapper.h, src/musclecard.c, src/muscletest.c, src/pcscdaemon.c, src/powermgt_macosx.c, src/prothandler.c, src/prothandler.h, src/readerfactory.c, src/readerfactory.h, src/sys_generic.h, src/sys_hpux.c, src/sys_solaris.c, src/sys_unix.c, src/testpcsc.c, src/thread_generic.h, src/thread_macosx.c, src/thread_unix.c, src/tokenfactory.c, src/tokenfactory.h, src/tokenparser.c, src/utils/bundleTool.c, src/utils/formaticc.c, src/utils/installifd.c, src/winscard.c, src/winscard_clnt.c, src/winscard_msg.c, src/winscard_msg.h, src/winscard_svc.c, src/winscard_svc.h:
	complete and automatic reindentation of *.c and *.h files

	* ChangeLog: test

2002-04-01  Jean-Luc Giraud  <giraud@acer>

	* src/PCSC/musclecard.h: musclecard:
	- replaced PCSC_TARGET_OSX with __APPLE__ in #ifndef for mscdefines.h inclusion
	pbproj:
	- no meaningful modifications

2002-03-31  Jean-Luc Giraud  <giraud@acer>

	* pbx/PCSC.pbproj/project.pbxproj, src/readerfactory.c:
	Fix 1 issue in readerfactory.c
	- valueLength=sizeof(tagValue) in RFSetReaderName to allow IFDHandlers to know
	how much space is available

	Modified PB project to allow build in proper order and have testpcsc used
	the new PCSC framework available in the build folder.

2002-03-31  David Corcoran  <corcoran@acer>

	* src/configfile.c: Added this

	* src/configfile.l: Big Ass Error badError = 1 instead of ==

2002-03-30  David Corcoran  <corcoran@acer>

	* src/pcscdaemon.c: removed crap PCSC_DEBUG

	* src/PCSC/wintypes.h, src/readerfactory.c:
	Fixed multi-reader bug, also fixed wintypes bug

	* build/aclocal.m4, config.h.in, configure, configure.in, doc/Makefile.am, doc/Makefile.in, doc/bundleTool.1, doc/pcscd.8.in, src/pcscdaemon.c, src/utils/Makefile.am, src/utils/Makefile.in:
	added the man pages

	* src/configfile.l, src/pcscdaemon.c, src/Makefile.am, src/configfile.c:
	Added some command line arguments.

	* src/PCSC/debuglog.h, src/PCSC/pcsclite.h.in, src/debuglog.c, src/pcscdaemon.c, src/tokenparser.c:
	Added command line debug options

	* src/utils/Makefile.am, src/utils/Makefile.in, src/utils/README, src/utils/bundleTool.c, src/utils/formaticc.c, src/utils/installifd.c, src/utils/sample.ibm, src/utils/sample.in, src/utils/sample.out:
	New file.

	* src/utils/Makefile.am, src/utils/Makefile.in, src/utils/README, src/utils/bundleTool.c, src/utils/formaticc.c, src/utils/installifd.c, src/utils/sample.ibm, src/utils/sample.in, src/utils/sample.out:
	PCSC

	* src/PCSC/wintypes.h, src/winscard_msg.h, src/winscard_svc.c, src/winscard_svc.h:
	New file.

	* src/PCSC/wintypes.h, src/winscard_msg.h, src/winscard_svc.c, src/winscard_svc.h:
	PCSC

	* src/winscard_clnt.c, src/winscard_msg.c: New file.

	* src/winscard_clnt.c, src/winscard_msg.c: PCSC

	* src/PCSC/winscard.h, src/winscard.c: New file.

	* src/PCSC/winscard.h, src/winscard.c: PCSC

	* src/tokenparser.l: New file.

	* src/tokenparser.l: PCSC

	* src/tokenparser.c: New file.

	* src/tokenparser.c: PCSC

	* src/tokenfactory.c, src/tokenfactory.h: New file.

	* src/tokenfactory.c, src/tokenfactory.h: PCSC

	* src/sys_hpux.c, src/sys_solaris.c, src/sys_unix.c, src/testpcsc.c, src/thread_generic.h, src/thread_macosx.c, src/thread_unix.c:
	New file.

	* src/sys_hpux.c, src/sys_solaris.c, src/sys_unix.c, src/testpcsc.c, src/thread_generic.h, src/thread_macosx.c, src/thread_unix.c:
	PCSC

	* src/README_INTERNALS.txt, src/readerfactory.c, src/readerfactory.h, src/sys_generic.h:
	New file.

	* src/README_INTERNALS.txt, src/readerfactory.c, src/readerfactory.h, src/sys_generic.h:
	PCSC

	* src/PCSC/pcsclite.h.in, src/pcscdaemon.c, src/powermgt_macosx.c, src/prothandler.c, src/prothandler.h:
	New file.

	* src/PCSC/pcsclite.h.in, src/pcscdaemon.c, src/powermgt_macosx.c, src/prothandler.c, src/prothandler.h:
	PCSC

	* src/PCSC/musclecard.h, src/muscletest.c: New file.

	* src/PCSC/musclecard.h, src/muscletest.c: PCSC

	* src/musclecard.c: New file.

	* src/musclecard.c: PCSC

	* src/Makefile.in, src/PCSC/mscdefines.h: New file.

	* src/Makefile.in, src/PCSC/mscdefines.h: PCSC

	* src/Makefile.am, src/ifdwrapper.c, src/ifdwrapper.h: New file.

	* src/Makefile.am, src/ifdwrapper.c, src/ifdwrapper.h: PCSC

	* src/PCSC/ifdhandler.h, src/hotplug_macosx.c: New file.

	* src/PCSC/ifdhandler.h, src/hotplug_macosx.c: PCSC

	* src/eventhandler.c, src/eventhandler.h, src/hotplug.h, src/hotplug_generic.c, src/hotplug_linux.c:
	New file.

	* src/eventhandler.c, src/eventhandler.h, src/hotplug.h, src/hotplug_generic.c, src/hotplug_linux.c:
	PCSC

	* src/driverparser.c, src/driverparser.l, src/dyn_bsd.c, src/dyn_generic.h, src/dyn_hpux.c, src/dyn_macosx.c, src/dyn_unix.c:
	New file.

	* src/driverparser.c, src/driverparser.l, src/dyn_bsd.c, src/dyn_generic.h, src/dyn_hpux.c, src/dyn_macosx.c, src/dyn_unix.c:
	PCSC

	* src/PCSC/debuglog.h, src/configfile.c, src/configfile.h, src/configfile.l, src/debuglog.c:
	New file.

	* src/PCSC/debuglog.h, src/configfile.c, src/configfile.h, src/configfile.l, src/debuglog.c:
	PCSC

	* pbx/PCSC.pbproj/project.pbxproj, src/atrhandler.c, src/atrhandler.h:
	New file.

	* pbx/PCSC.pbproj/project.pbxproj, src/atrhandler.c, src/atrhandler.h:
	PCSC

	* doc/README.DAEMON, doc/pcscd.8.in, doc/pcscd.startup, etc/Makefile.am, etc/Makefile.in, etc/SmartcardServices, etc/StartupParameters.plist, etc/reader.conf.in, pbx/config.h:
	New file.

	* doc/README.DAEMON, doc/pcscd.8.in, doc/pcscd.startup, etc/Makefile.am, etc/Makefile.in, etc/SmartcardServices, etc/StartupParameters.plist, etc/reader.conf.in, pbx/config.h:
	PCSC

	* doc/pcsc-lite-0.8.7.pdf: New file.

	* doc/pcsc-lite-0.8.7.pdf: PCSC

	* doc/Makefile.in: New file.

	* doc/Makefile.in: PCSC

	* build/ltmain.sh, build/missing, build/mkinstalldirs, build/ylwrap, doc/Makefile.am, doc/bundleTool.1:
	New file.

	* build/ltmain.sh, build/missing, build/mkinstalldirs, build/ylwrap, doc/Makefile.am, doc/bundleTool.1:
	PCSC

	* build/ltconfig: New file.

	* build/ltconfig: PCSC

	* build/config.sub, build/install-sh: New file.

	* build/config.sub, build/install-sh: PCSC

	* build/config.guess: New file.

	* build/config.guess: PCSC

	* build/acx_pthread.m4: New file.

	* build/acx_pthread.m4: PCSC

	* build/aclocal.m4: New file.

	* build/aclocal.m4: PCSC

	* Makefile.in, NEWS, README, SECURITY, build/acinclude.m4, reconf, stamp-h.in:
	New file.

	* Makefile.in, NEWS, README, SECURITY, build/acinclude.m4, reconf, stamp-h.in:
	PCSC

	* INSTALL, Makefile.am: New file.

	* INSTALL, Makefile.am: PCSC

	* COPYING, DRIVERS, HELP, configure, configure.in: New file.

	* COPYING, DRIVERS, HELP, configure, configure.in: PCSC

	* AUTHORS, ChangeLog, bootstrap, config.h.in: New file.

	* AUTHORS, ChangeLog, bootstrap, config.h.in: PCSC

