Create and obtain access to the logical channel for a specific Secure Element.
NFC_API nfc_result_t nfc_se_open_logical_channel_direct(secure_element_id_type_t secureElementType, const uint8_t *pAID, size_t nLengthOfAIDInBytes, fcp_type_t fcpResponseType, uint32_t *phSESession, uint32_t *phSEChannel, int32_t *pResponseLen)
The Application ID that the caller wants to open a channel with.
The length of the pAID argument.
The format of the FCP information requested from the Secure Element. The value of this argument must be one of the constants defined by fcp_type_t. Use OPEN_NO_FCP_INFO if you are not interested in the results.
The session created to the secure element. The caller of this method is responsible for closing the session via the nfc_se_session_close_session() method.
The channel created to the secure element. The caller of this method is responsible for closing the channel via the nfc_se_channel_close_channel() method.
The length of the response data returned as a result of the open call. This argument is set to 0 if there is no data and -1 if the provided fctResponseType argument is unsupported by the reader which the session is opened on. It may be NULL if OPEN_NO_FCP_INFO is supplied to the fcpResponseType argument. Use the nfc_se_channel_get_transmit_data() function to read the data received prior to any APDU exchanges.
After access is obtained, a logical connection is created to an applet on the secure element. Logical channels are defined in the ISO 7816-4 specification.
NFC_RESULT_SUCCESS if the session is retrieved successfully; or one of the following:
- NFC_RESULT_SERVICE_CONNECTION_ERROR: An attempt to connect to the NFC system has failed.
- NFC_RESULT_INVALID_PARAMETER: A parameter is invalid.
- NFC_RESULT_SE_OUT_OF_LOGICAL_CHANNELS: No logical channels are available, because all channels are in use.
- NFC_RESULT_SE_AID_NOT_FOUND: The applet with the specified Application ID (AID) cannot be found.
- NFC_RESULT_SE_REQUEST_REJECTED: The request is rejected by the Access Control files (ACF) or some other security mechanism.