9 Index

A

Abstract data model

   client

   server

Access_Mode_Flags packet

Applicability

B

Begin transaction call example

Begin transaction return example

C

Capability negotiation

Card_Reader_State packet

Change tracking

Client

   abstract data model

   higher-layer triggered events

   initialization

   local events

   message processing

   Processing Incoming Replies method

   Sending Outgoing Messages method

   sequencing rules

   structures (section 2.2.1, section 2.2.3)

   timer events

   timers

Common data types

Connect call example

Connect return example

Connect_Common structure

Connect_Return structure

ConnectA_Call structure

ConnectW_Call structure

Context_Call structure

ContextAndStringA_Call structure

ContextAndStringW_Call structure

ContextAndTwoStringA_Call structure

ContextAndTwoStringW_Call structure

Control_Call structure

Control_Return structure

D

Data model - abstract

   client

   server

Data types

   common - overview

Disconnect call example

Disconnect return example

E

End transaction call example

End transaction return example

Establish context call example

Establish context return example

EstablishContext_Call structure

EstablishContext_Return structure

Events

   local - client

   local - server

   timer - client

   timer - server

Examples

   begin transaction call

   begin transaction call example

   begin transaction return

   begin transaction return example

   connect call

   connect call example

   connect return

   connect return example

   disconnect call

   disconnect call example

   disconnect return

   disconnect return example

   end transaction call

   end transaction call example

   end transaction return

   end transaction return example

   establish context call

   establish context call example

   establish context return

   establish context return example

   get status change call

   get status change call example

   get status change return

   get status change return example

   list reader call example

   list reader return example

   list readers call

   list readers return

   overview

   release context call

   release context call example

   release context return

   release context return example

   status call

   status call example

   status return

   status return example

F

Fields - vendor-extensible

Full IDL

G

Get status change call example

Get status change return example

GetAttrib_Call structure

GetAttrib_Return structure

GetDeviceTypeId_Call structure

GetDeviceTypeId_Return structure

GetReaderIcon_Call structure

GetReaderIcon_Return structure

GetStatusChange_Return

GetStatusChangeA_Call structure

GetStatusChangeW_Call structure

GetTransmitCount_Call structure

GetTransmitCount_Return structure

Glossary

H

HCardAndDisposition_Call structure

Higher-layer triggered events - client

I

IDL

Implementer - security considerations

Implementers - security considerations

Index of security parameters

Informative references

Initialization

   client

   server

Introduction

L

List reader call example

List reader return example

List readers call example

List readers return example

ListReaderGroups_Call structure

ListReaderGroups_Return structure

ListReaders_Call structure

ListReaders_Return

Local events

   client

   server

LocateCards_ATRMask structure

LocateCards_Return structure

LocateCardsA_Call structure

LocateCardsByATRA_Call structure

LocateCardsByATRW_Call structure

LocateCardsW_Call structure

Long_Return structure

M

Message processing

   client

   server

Messages

   common data types

   names

   overview

   processing incoming replies

   sending outgoing messages

   transport

Methods

   Processing Incoming Replies

   SCARD_IOCTL_ACCESSSTARTEDEVENT (IOCTL 0x000900E0)

   SCARD_IOCTL_ADDREADERTOGROUPA (IOCTL 0x00090070)

   SCARD_IOCTL_ADDREADERTOGROUPW (IOCTL 0x00090074)

   SCARD_IOCTL_BEGINTRANSACTION (IOCTL 0x000900BC)

   SCARD_IOCTL_CANCEL (IOCTL 0x000900A8)

   SCARD_IOCTL_CONNECTA (IOCTL 0x000900AC)

   SCARD_IOCTL_CONNECTW (IOCTL 0x000900B0)

   SCARD_IOCTL_CONTROL (IOCTL 0x000900D4)

   SCARD_IOCTL_DISCONNECT (IOCTL 0x000900B8)

   SCARD_IOCTL_ENDTRANSACTION (IOCTL 0x000900C0)

   SCARD_IOCTL_ESTABLISHCONTEXT (IOCTL 0x00090014)

   SCARD_IOCTL_FORGETREADERA (IOCTL 0x00090068)

   SCARD_IOCTL_FORGETREADERGROUPA (IOCTL 0x00090058)

   SCARD_IOCTL_FORGETREADERGROUPW (IOCTL 0x0009005C)

   SCARD_IOCTL_FORGETREADERW (IOCTL 0x0009006C)

   SCARD_IOCTL_GETATTRIB (IOCTL 0x000900D8)

   SCARD_IOCTL_GETDEVICETYPEID (IOCTL 0x00090108)

   SCARD_IOCTL_GETREADERICON (IOCTL 0x00090104)

   SCARD_IOCTL_GETSTATUSCHANGEA (IOCTL 0x000900A0)

   SCARD_IOCTL_GETSTATUSCHANGEW (IOCTL 0x000900A4)

   SCARD_IOCTL_GETTRANSMITCOUNT (IOCTL 0x00090100)

   SCARD_IOCTL_INTRODUCEREADERA (IOCTL 0x00090060)

   SCARD_IOCTL_INTRODUCEREADERGROUPA (IOCTL 0x00090050)

   SCARD_IOCTL_INTRODUCEREADERGROUPW (IOCTL 0x00090054)

   SCARD_IOCTL_INTRODUCEREADERW (IOCTL 0x00090064)

   SCARD_IOCTL_ISVALIDCONTEXT (IOCTL 0x0009001C)

   SCARD_IOCTL_LISTREADERGROUPSA (IOCTL 0x00090020)

   SCARD_IOCTL_LISTREADERGROUPSW (IOCTL 0x00090024)

   SCARD_IOCTL_LISTREADERSA (IOCTL 0x00090028)

   SCARD_IOCTL_LISTREADERSW (IOCTL 0x0009002C)

   SCARD_IOCTL_LOCATECARDSA (IOCTL 0x00090098)

   SCARD_IOCTL_LOCATECARDSBYATRA (IOCTL 0x000900E8)

   SCARD_IOCTL_LOCATECARDSBYATRW (IOCTL 0x000900EC)

   SCARD_IOCTL_LOCATECARDSW (IOCTL 0x0009009C)

   SCARD_IOCTL_READCACHEA (IOCTL 0x000900F0)

   SCARD_IOCTL_READCACHEW (IOCTL 0x000900F4)

   SCARD_IOCTL_RECONNECT (IOCTL 0x000900B4)

   SCARD_IOCTL_RELEASECONTEXT (IOCTL 0x00090018)

   SCARD_IOCTL_RELEASETARTEDEVENT

   SCARD_IOCTL_REMOVEREADERFROMGROUPA (IOCTL 0x00090078)

   SCARD_IOCTL_REMOVEREADERFROMGROUPW (IOCTL 0x0009007C)

   SCARD_IOCTL_SETATTRIB (IOCTL 0x000900DC)

   SCARD_IOCTL_STATE (IOCTL 0x000900C4)

   SCARD_IOCTL_STATUSA (IOCTL 0x000900C8)

   SCARD_IOCTL_STATUSW (IOCTL 0x000900CC)

   SCARD_IOCTL_TRANSMIT (IOCTL 0x000900D0)

   SCARD_IOCTL_WRITECACHEA (IOCTL 0x000900F8)

   SCARD_IOCTL_WRITECACHEW (IOCTL 0x000900FC)

   Sending Outgoing Messages

N

Normative references

O

Outgoing messages - sending

Overview (synopsis)

P

Parameters - security

Parameters - security index

Preconditions

Prerequisites

Processing Incoming Replies method

Product behavior

Protocol Details

   overview

Protocol_Identifier packet

R

ReadCache_Common structure

ReadCache_Return structure

ReadCacheA_Call structure

ReadCacheW_Call structure

Reader_State packet

ReaderState_Common_Call structure

ReaderState_Return structure

ReaderStateA structure

ReaderStateW structure

Reconnect_Call structure

Reconnect_Return structure

REDIR_SCARDCONTEXT structure

REDIR_SCARDHANDLE structure

References

   informative

   normative

Relationship to other protocols

Release context call example

Release context return example

Replies - processing

Return_Code packet

S

SCARD_IOCTL_ACCESSSTARTEDEVENT (IOCTL 0x000900E0) method

SCARD_IOCTL_ADDREADERTOGROUPA (IOCTL 0x00090070) method

SCARD_IOCTL_ADDREADERTOGROUPW (IOCTL 0x00090074) method

SCARD_IOCTL_BEGINTRANSACTION (IOCTL 0x000900BC) method

SCARD_IOCTL_CANCEL (IOCTL 0x000900A8) method

SCARD_IOCTL_CONNECTA (IOCTL 0x000900AC) method

SCARD_IOCTL_CONNECTW (IOCTL 0x000900B0) method

SCARD_IOCTL_CONTROL (IOCTL 0x000900D4) method

SCARD_IOCTL_DISCONNECT (IOCTL 0x000900B8) method

SCARD_IOCTL_ENDTRANSACTION (IOCTL 0x000900C0) method

SCARD_IOCTL_ESTABLISHCONTEXT (IOCTL 0x00090014) method

SCARD_IOCTL_FORGETREADERA (IOCTL 0x00090068) method

SCARD_IOCTL_FORGETREADERGROUPA (IOCTL 0x00090058) method

SCARD_IOCTL_FORGETREADERGROUPW (IOCTL 0x0009005C) method

SCARD_IOCTL_FORGETREADERW (IOCTL 0x0009006C) method

SCARD_IOCTL_GETATTRIB (IOCTL 0x000900D8) method

SCARD_IOCTL_GETDEVICETYPEID (IOCTL 0x00090108) method

SCARD_IOCTL_GETREADERICON (IOCTL 0x00090104) method

SCARD_IOCTL_GETSTATUSCHANGEA (IOCTL 0x000900A0) method

SCARD_IOCTL_GETSTATUSCHANGEW (IOCTL 0x000900A4) method

SCARD_IOCTL_GETTRANSMITCOUNT (IOCTL 0x00090100) method

SCARD_IOCTL_INTRODUCEREADERA (IOCTL 0x00090060) method

SCARD_IOCTL_INTRODUCEREADERGROUPA (IOCTL 0x00090050) method

SCARD_IOCTL_INTRODUCEREADERGROUPW (IOCTL 0x00090054) method

SCARD_IOCTL_INTRODUCEREADERW (IOCTL 0x00090064) method

SCARD_IOCTL_ISVALIDCONTEXT (IOCTL 0x0009001C) method

SCARD_IOCTL_LISTREADERGROUPSA (IOCTL 0x00090020) method

SCARD_IOCTL_LISTREADERGROUPSW (IOCTL 0x00090024) method

SCARD_IOCTL_LISTREADERSA (IOCTL 0x00090028) method

SCARD_IOCTL_LISTREADERSW (IOCTL 0x0009002C) method

SCARD_IOCTL_LOCATECARDSA (IOCTL 0x00090098) method

SCARD_IOCTL_LOCATECARDSBYATRA (IOCTL 0x000900E8) method

SCARD_IOCTL_LOCATECARDSBYATRW (IOCTL 0x000900EC) method

SCARD_IOCTL_LOCATECARDSW (IOCTL 0x0009009C) method

SCARD_IOCTL_READCACHEA (IOCTL 0x000900F0) method

SCARD_IOCTL_READCACHEW (IOCTL 0x000900F4) method

SCARD_IOCTL_RECONNECT (IOCTL 0x000900B4) method

SCARD_IOCTL_RELEASECONTEXT (IOCTL 0x00090018) method

SCARD_IOCTL_RELEASETARTEDEVENT method

SCARD_IOCTL_REMOVEREADERFROMGROUPA (IOCTL 0x00090078) method

SCARD_IOCTL_REMOVEREADERFROMGROUPW (IOCTL 0x0009007C) method

SCARD_IOCTL_SETATTRIB (IOCTL 0x000900DC) method

SCARD_IOCTL_STATE (IOCTL 0x000900C4) method

SCARD_IOCTL_STATUSA (IOCTL 0x000900C8) method

SCARD_IOCTL_STATUSW (IOCTL 0x000900CC) method

SCARD_IOCTL_TRANSMIT (IOCTL 0x000900D0) method

SCARD_IOCTL_WRITECACHEA (IOCTL 0x000900F8) method

SCARD_IOCTL_WRITECACHEW (IOCTL 0x000900FC) method

ScardAccessStartedEvent_Call packet

SCardIO_Request structure

Security

   implementer considerations

   parameter index

Sending Outgoing Messages method

Sequencing rules

   client

   server

Server

   abstract data model

   initialization

   local events

   message processing

   SCARD_IOCTL_ACCESSSTARTEDEVENT (IOCTL 0x000900E0) method

   SCARD_IOCTL_ADDREADERTOGROUPA (IOCTL 0x00090070) method

   SCARD_IOCTL_ADDREADERTOGROUPW (IOCTL 0x00090074) method

   SCARD_IOCTL_BEGINTRANSACTION (IOCTL 0x000900BC) method

   SCARD_IOCTL_CANCEL (IOCTL 0x000900A8) method

   SCARD_IOCTL_CONNECTA (IOCTL 0x000900AC) method

   SCARD_IOCTL_CONNECTW (IOCTL 0x000900B0) method

   SCARD_IOCTL_CONTROL (IOCTL 0x000900D4) method

   SCARD_IOCTL_DISCONNECT (IOCTL 0x000900B8) method

   SCARD_IOCTL_ENDTRANSACTION (IOCTL 0x000900C0) method

   SCARD_IOCTL_ESTABLISHCONTEXT (IOCTL 0x00090014) method

   SCARD_IOCTL_FORGETREADERA (IOCTL 0x00090068) method

   SCARD_IOCTL_FORGETREADERGROUPA (IOCTL 0x00090058) method

   SCARD_IOCTL_FORGETREADERGROUPW (IOCTL 0x0009005C) method

   SCARD_IOCTL_FORGETREADERW (IOCTL 0x0009006C) method

   SCARD_IOCTL_GETATTRIB (IOCTL 0x000900D8) method

   SCARD_IOCTL_GETDEVICETYPEID (IOCTL 0x00090108) method

   SCARD_IOCTL_GETREADERICON (IOCTL 0x00090104) method

   SCARD_IOCTL_GETSTATUSCHANGEA (IOCTL 0x000900A0) method

   SCARD_IOCTL_GETSTATUSCHANGEW (IOCTL 0x000900A4) method

   SCARD_IOCTL_GETTRANSMITCOUNT (IOCTL 0x00090100) method

   SCARD_IOCTL_INTRODUCEREADERA (IOCTL 0x00090060) method

   SCARD_IOCTL_INTRODUCEREADERGROUPA (IOCTL 0x00090050) method

   SCARD_IOCTL_INTRODUCEREADERGROUPW (IOCTL 0x00090054) method

   SCARD_IOCTL_INTRODUCEREADERW (IOCTL 0x00090064) method

   SCARD_IOCTL_ISVALIDCONTEXT (IOCTL 0x0009001C) method

   SCARD_IOCTL_LISTREADERGROUPSA (IOCTL 0x00090020) method

   SCARD_IOCTL_LISTREADERGROUPSW (IOCTL 0x00090024) method

   SCARD_IOCTL_LISTREADERSA (IOCTL 0x00090028) method

   SCARD_IOCTL_LISTREADERSW (IOCTL 0x0009002C) method

   SCARD_IOCTL_LOCATECARDSA (IOCTL 0x00090098) method

   SCARD_IOCTL_LOCATECARDSBYATRA (IOCTL 0x000900E8) method

   SCARD_IOCTL_LOCATECARDSBYATRW (IOCTL 0x000900EC) method

   SCARD_IOCTL_LOCATECARDSW (IOCTL 0x0009009C) method

   SCARD_IOCTL_READCACHEA (IOCTL 0x000900F0) method

   SCARD_IOCTL_READCACHEW (IOCTL 0x000900F4) method

   SCARD_IOCTL_RECONNECT (IOCTL 0x000900B4) method

   SCARD_IOCTL_RELEASECONTEXT (IOCTL 0x00090018) method

   SCARD_IOCTL_RELEASETARTEDEVENT method

   SCARD_IOCTL_REMOVEREADERFROMGROUPA (IOCTL 0x00090078) method

   SCARD_IOCTL_REMOVEREADERFROMGROUPW (IOCTL 0x0009007C) method

   SCARD_IOCTL_SETATTRIB (IOCTL 0x000900DC) method

   SCARD_IOCTL_STATE (IOCTL 0x000900C4) method

   SCARD_IOCTL_STATUSA (IOCTL 0x000900C8) method

   SCARD_IOCTL_STATUSW (IOCTL 0x000900CC) method

   SCARD_IOCTL_TRANSMIT (IOCTL 0x000900D0) method

   SCARD_IOCTL_WRITECACHEA (IOCTL 0x000900F8) method

   SCARD_IOCTL_WRITECACHEW (IOCTL 0x000900FC) method

   sequencing rules

   structures (section 2.2.1, section 2.2.2)

   timer events

   timers

SetAttrib_Call structure

Standards assignments

State_Call structure

State_Return structure

Status call example

Status return example

Status_Call structure

Status_Return structure

Structures

   client (section 2.2.1, section 2.2.3)

   server (section 2.2.1, section 2.2.2)

T

Timer events

   client

   server

Timers

   client

   server

Tracking changes

Transmit_Call structure

Transmit_Return structure

Transport

Transport - message

Triggered events - higher-layer - client

V

Vendor-extensible fields

Versioning

W

WriteCache_Common structure

WriteCacheA_Call structure

WriteCacheW_Call structure