The card power function resets or powers down an inserted smart card.
NTSTATUS
(*ReaderFunction[RDF_CARD_POWER])(
PSMARTCARD_EXTENSION SmartcardExtension
);
| 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. |
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. |
Declared in smclib.h. Include smclib.h.
It is mandatory for card reader drivers to implement this callback function.