IFDHandler version 1 support removed from pcsc-lite
In revision 5321 (October 2010) I removed the support of the IFD Handler API version 1. The IFD Handler API the is API used to communicate between pcscd and reader driver. The API v3 is documented here.
The version 1 of the API is very old and I never saw a reader driver using it. Even when I started using pcsc-lite and writing drivers the version 2 was already in place.
Motivation
I removed this API for two reasons:
- This API is not used and is dead code inside pcscd.
- This API do not return the ATR on card power on but using
IFD_Set_Capabilities()
/IFD_Get_Capabilities()
andIFDStatusICC()
had a special case for that.
With this v1 API removal I can simplify the prototype of
IFDStatusICC()
and remove 2 parameters from:
LONG IFDStatusICC(READER_CONTEXT * rContext, PDWORD pdwStatus,
PUCHAR pucAtr, PDWORD pdwAtrLen)
to:
LONG IFDStatusICC(READER_CONTEXT * rContext, PDWORD pdwStatus)
This also simplifies the internal pcscd code using
IFDStatusICC()
since the code just wants to know if a card is present or not, but not need to know the ATR.Consideration
Note that I already removed the API prototype from
ifdhandler.h
in revision 4472 in October 2009. And no one complained since then. So the version 1 API may really be unused.Result
51 lines of code added. 335 lines of code removed. Gain: 284 lines of code removed.