2.2.2.18 Status_Call

Status_Call obtains the status of a connection for a valid smart card reader handle.

 typedef struct _Status_Call {
   REDIR_SCARDHANDLE hCard;
   long fmszReaderNamesIsNULL;
   unsigned long cchReaderLen;
   unsigned long cbAtrLen;
 } Status_Call;

hCard: A handle, as specified in section 2.2.1.2.

fmszReaderNamesIsNULL: A Boolean value specifying whether the caller wants to retrieve the length of the data. Set to FALSE (0x00000000) to allow the data to be returned. Set to TRUE (0x00000001), and only the length of the data will be returned. Also, cchReaderLen is ignored if this value is TRUE (0x00000001).

Name

Value

FALSE

0x00000000

TRUE

0x00000001

cchReaderLen: The length of the string buffer specified on the TS server side. If cchReaderLen is set to SCARD_AUTOALLOCATE with a value of 0xFFFFFFFF, a string of any length can be returned. Otherwise, the returned string MUST NOT exceed cchReaderLen characters in length, including any null characters. When the string to be returned exceeds cchReaderLen characters in length, including any null characters, Status_Return.ReturnCode MUST be set to SCARD_E_INSUFFICIENT_BUFFER (0x80100008). The cchReaderLen field MUST be ignored if fmszReaderNamesIsNULL is TRUE (0x00000001). Also, if fmszReaderNamesIsNULL is set to FALSE (0x00000000) but cchReaderLen is set to 0x00000000, then the call MUST succeed, Status_Return.cbAtrLen MUST be set to the length of the data in bytes, and Status_Return.pbAtr MUST be set to NULL.

cbAtrLen: Unused. MUST be ignored upon receipt.