2009/11/23 Martin Paljak <[email protected]>: > > On 18.11.2009, at 18:27, Ludovic Rousseau wrote: > >> 2009/11/18 Martin Paljak <[email protected]>: >>> Hi. >>> >>> From SCardControl documentation: >>> """ >>> This function sends a command directly to the IFD Handler (reader driver) >>> to be processed by the reader. >>> """ >>> If that is the case, is it reasonable/designed that it returns card related >>> errors like: >>> >>> SCARD_W_RESET_CARD >>> SCARD_W_REMOVED_CARD >> >> These error codes are not returned by pcsc-lite. I removed them from >> the documentation in revision 4558. >> I also added SCARD_E_INVALID_PARAMETER that may be returned. > > The way I see it, they are returned by the call to > RFCheckReaderEventState(rContext, hCard) in PCSC/src/winscard.h, in > SCardControl(), line 1407 (is there a way to link to pcsc-lite source with > line numbers?), relating the function to a card, before anything is sent to > the ifdhandler.
Exact. Fixed in revision 4566. > Out of the control codes supported by the CCID ifdhandler, it is somewhat > premature for these control codes (which, as I understand, do not result in > card communication, ever): > IOCTL_SMARTCARD_VENDOR_IFD_EXCHANGE and IOCTL_FEATURE_MCT_READERDIRECT (not > 100% sure as I have not implemented those) > CM_IOCTL_GET_FEATURE_REQUEST > IOCTL_FEATURE_IFD_PIN_PROPERTIES > > But valid for these (which will do card communication and where card events > make sense): > IOCTL_FEATURE_VERIFY_PIN_DIRECT > IOCTL_FEATURE_MODIFY_PIN_DIRECT > > As the card state is checked on pcsc-lite level, it is not OK or even > possible to check the semantics of the control codes. One way could be > postponing the check for reader event states after the ifdhandler returns an > error. You would then send a VERIFY_PIN command to a card that has been reseted or even changed? > So both return codes are valid from SCardControl, but returned at bad times, > IMO? I could write a patch for this, if this solution is OK. What is the problem to have RFCheckReaderEventState() in all cases? Does the problem happen in practice? Bye -- Dr. Ludovic Rousseau _______________________________________________ Muscle mailing list [email protected] http://lists.drizzle.com/mailman/listinfo/muscle
