openaliro
Aliro reader: UWB/CCC core and ESP32-S3/C5/C6 port
Loading...
Searching...
No Matches
nfc_select.h File Reference

Parsed result of an NFC SELECT command for the Aliro applet: negotiated protocol version, maximum command and response data lengths (from TLV or default), extended-length support, and the raw proprietary information TLV (A5 tag) for further parsing. More...

#include <stddef.h>
#include <stdint.h>
Include dependency graph for nfc_select.h:

Go to the source code of this file.

Data Structures

struct  woz_aliro_select_response
 Parsed NFC SELECT response: negotiated protocol version, max command/response data lengths (from 7F66 TLV or defaults), extended-length support flag, and the complete proprietary information TLV (A5 tag). More...
 

Functions

int woz_aliro_parse_select_response_ex (const uint8_t *response, size_t response_length, enum woz_aliro_select_phase phase, struct woz_aliro_select_response *result)
 Parse a complete ISO 7816 SELECT response APDU (ending with 9000), validate the AID matches the requested phase (EXPEDITED or STEP_UP), extract proprietary information TLV, and decode protocol version and extended-length sizes.
 

Detailed Description

Parsed result of an NFC SELECT command for the Aliro applet: negotiated protocol version, maximum command and response data lengths (from TLV or default), extended-length support, and the raw proprietary information TLV (A5 tag) for further parsing.

Function Documentation

◆ woz_aliro_parse_select_response_ex()

int woz_aliro_parse_select_response_ex ( const uint8_t *  response,
size_t  response_length,
enum woz_aliro_select_phase  phase,
struct woz_aliro_select_response result 
)

Parse a complete ISO 7816 SELECT response APDU (ending with 9000), validate the AID matches the requested phase (EXPEDITED or STEP_UP), extract proprietary information TLV, and decode protocol version and extended-length sizes.

Return WOZ_ALIRO_SELECT_OK on success or an error code (WRONG_APPLICATION, STATUS_ERROR, INVALID_APDU, INVALID_ARGUMENT).