Previous Next

RDF_CARD_POWER

The card power function resets or powers down an inserted smart card.

NTSTATUS 
  (*ReaderFunction[RDF_CARD_POWER])(
    PSMARTCARD_EXTENSION  SmartcardExtension
    );

Parameters

SmartcardExtension
Pointer to the smart card extension of the device. On input, the structure pointed to by SmartcardExtension should have the following values:
Minor Code Meaning
SCARD_COLD_RESET Performs a cold reset of the card.
SCARD_WARM_RESET Performs a warm reset of the card.
SCARD_POWER_DOWN Switches off card power.

On output, SmartcardExtension should have the following values.
Member of SmartcardExtension Meaning
IoRequest.ReplyBuffer This buffer receives the ATR returned by the card. In addition, you must transfer the ATR to SmartcardExtension->CardCapabilities.ATR.Buffer to let the library parse the ATR.
IoRequest.Information Receives the actual length of the ATR.
CardCapabilities.ATR.Length Contains the length of the ATR.

Return Value

This function returns an NTSTATUS value. Possible values are the following.

Value Meaning
STATUS_SUCCESS Function successfully executed.
STATUS_NO_MEDIA No card is in the reader.
STATUS_IO_TIMEOUT The request has timed out.
STATUS_BUFFER_TOO_SMALL The user buffer is not large enough to hold the ATR.

Headers

Declared in smclib.h. Include smclib.h.

Comments

It is mandatory for card reader drivers to implement this callback function.

See Also

SMARTCARD_EXTENSION