11.12.3.4.110. Function Se05x_API_ReadIDList¶
Defined in File se05x_APDU_apis.h
11.12.3.4.110.1. Function Documentation¶
-
smStatus_t
Se05x_API_ReadIDList
(pSe05xSession_t session_ctx, uint16_t outputOffset, uint8_t filter, uint8_t *pmore, uint8_t *idlist, size_t *pidlistLen)¶ Se05x_API_ReadIDList
Get a list of present Secure Object identifiers.
The offset in TAG_1 is an 0-based offset in the list of object. As the user does not know how many objects would be returned, the offset needs to be based on the return values from the previous ReadIDList. If the applet only returns a part of the result, it will indicate that more identifiers are available (by setting TLV[TAG_1] in the response to 0x01). The user can then retrieve the next chunk of identifiers by calling ReadIDList with an offset that equals the amount of identifiers listed in the previous response.
Example 1: first ReadIDList command TAG_1=0, response TAG_1=0, TAG_2=complete list
Example 2: first ReadIDList command TAG_1=0, response TAG_1=1, TAG_2=first chunk (m entries) second ReadIDList command TAG_1=m, response TAG_1=1, TAG_2=second chunk (n entries) thirst ReadIDList command TAG_1=(m+n), response TAG_1=0, TAG_2=third last chunk
Command to Applet
Field
Value
Description
CLA
0x80
INS
INS_READ
See
SE05x_INS_t
P1
P1_DEFAULT
See
SE05x_P1_t
P2
P2_LIST
See
SE05x_P2_t
Lc
#(Payload)
TLV[TAG_1]
2-byte offset
TLV[TAG_2]
1-byte type filter: 1 byte from
SE05x_SecObjTyp_t
or 0xFF for all types.Le
0x00
R-APDU Body
Value
Description
TLV[TAG_1]
1-byte
MoreIndicatorRef
TLV[TAG_2]
Byte array containing 4-byte identifiers.
R-APDU Trailer
SW
Description
SW_NO_ERROR
Data is returned successfully.
- Parameters
[in] session_ctx
: Session Context [0:kSE05x_pSession][in] outputOffset
: output offset [1:kSE05x_TAG_1][in] filter
: filter [2:kSE05x_TAG_2][out] pmore
: If more ids are present [0:kSE05x_TAG_1][out] idlist
: Byte array containing 4-byte identifiers [1:kSE05x_TAG_2][inout] pidlistLen
: Length for idlist