|
The SCF_Card_reset() function causes the specified smartcard to be reset by the terminal.
A card can be reset only if it has not been locked (with SCF_Card_lock(3SMARTCARD)) by another client. A client wishing to reset a card should either first call SCF_Card_lock() to obtain the card lock, or be prepared to retry the reset operation if it fails because another client holds the card lock.
When the card is reset, any SCF_Card_t object representing the card will continue to remain valid after the reset. When the reset occurs, an SCF_EVENT_CARDRESET event will be sent to all registered event listeners for the terminal (assuming they registered for
this event). This is the only notification of a reset provided to SCF clients. When a client receives this event, it should be prepared to reinitialize any state on the card that might have been interrupted by the reset. New information about the card (for example, ATR, if it changed) can also be available
from SCF_Card_getInfo(3SMARTCARD).
|