AT-NFC 2.1 (win) AT-NFC kernel set

Data Structures | Macros
NFC external data used by external APP

Export/import data definition used for data exchange with Main Application. More...

## Data Structures
struct | tag_NFC_EXT_TERM_TRAN_DATA
| Terminal transaction data structure. More...
struct | tag_NFC_EXT_TERM_RESTART_DATA
| Terminal transaction restart data. More...

## Macros
#define | NFC_EXT_TERM_TRAN_DATA_RESET(DATA, SIZE)
| Terminal transaction data reset macro definition. More...
#define | NFC_EXT_TERM_TRAN_CHECK_OPT(TRAN, SIZE, OPTION)
| check Terminal transaction option macro More...
#define | NFC_EXT_TERM_RESTART_DATA_RESET(DATA, SIZE)
| Terminal transaction restart data reset macro definition. More...
typedef struct tag_NFC_EXT_TERM_TRAN_DATA | NFC_EXT_TERM_TRAN_DATA
| Terminal transaction data structure.
typedef struct tag_NFC_EXT_TERM_RESTART_DATA | NFC_EXT_TERM_RESTART_DATA
| Terminal transaction restart data.
#define | NFC_EXT_TERM_TRAN_DATA_VERSION 0x0001
| EP Terminal transaction data struct version ID. More...
#define | NFC_EXT_TERM_TRAN_OPT_DEBUG 0x0001
| Transaction options definitions. More...
#define | NFC_EXT_TERM_TRAN_OPT_DISABLE_MS_MODE 0x0002
#define | NFC_EXT_TERM_TRAN_OPT_DISABLE_EMV_MODE 0x0004
#define | NFC_EXT_TERM_TRAN_OPT_TRY_AGAIN_IS_FINAL 0x0008
#define | NFC_EXT_TERM_TRAN_OPT_TRY_AGAIN_CD_CVM_IS_FINAL 0x0010
#define | NFC_EXT_TERM_TRAN_OPT_CARD_ALREADY_DETECTED 0x0020
#define | NFC_EXT_TERM_RESTART_DATA_VERSION 0x0001
| Terminal transaction restart data struct version ID. More...
#define | NFC_EXT_TERM_RESTART_OPT_UNABLE_TO_GO_ONLINE 0x0001
| Terminal transaction restart data options. More...
#define | NFC_EXT_TERM_RESTART_OPT_SKIP_CARD_REMOVAL 0x0002
#define | NFC_EXT_TERM_RESTART_OPT_CARD_ALREADY_DETECTED 0x0004

## Detailed Description

Export/import data definition used for data exchange with Main Application.

## Macro Definition Documentation

## ◆ NFC_EXT_TERM_RESTART_DATA_RESET

#define NFC_EXT_TERM_RESTART_DATA_RESET | ( |  | DATA,
|  |  | SIZE
| ) |  |

Value:
do \
{ \
KER_MEM_SET(DATA, SIZE, 0, SIZE); \
(DATA)->usSize = SIZE; \
(DATA)->btVersion = NFC_EXT_TERM_RESTART_DATA_VERSION; \
(DATA)->pbtIssUpdateData = KER_NULL; \
} while (0)
KER_NULL
#define KER_NULL
Definition: emv_platform.h:80
NFC_EXT_TERM_RESTART_DATA_VERSION
#define NFC_EXT_TERM_RESTART_DATA_VERSION
Terminal transaction restart data struct version ID.
Definition: nfc_ext_data.h:103

Terminal transaction restart data reset macro definition.

## ◆ NFC_EXT_TERM_RESTART_DATA_VERSION

#define NFC_EXT_TERM_RESTART_DATA_VERSION 0x0001

Terminal transaction restart data struct version ID.

base version

## ◆ NFC_EXT_TERM_RESTART_OPT_CARD_ALREADY_DETECTED

#define NFC_EXT_TERM_RESTART_OPT_CARD_ALREADY_DETECTED 0x0004

Card already detected for second tap - skip initial card polling

## ◆ NFC_EXT_TERM_RESTART_OPT_SKIP_CARD_REMOVAL

#define NFC_EXT_TERM_RESTART_OPT_SKIP_CARD_REMOVAL 0x0002

skip wait for card removal - should be already done by external

## ◆ NFC_EXT_TERM_RESTART_OPT_UNABLE_TO_GO_ONLINE

#define NFC_EXT_TERM_RESTART_OPT_UNABLE_TO_GO_ONLINE 0x0001

Terminal transaction restart data options.

unable to go online

## ◆ NFC_EXT_TERM_TRAN_CHECK_OPT

#define NFC_EXT_TERM_TRAN_CHECK_OPT | ( |  | TRAN,
|  |  | SIZE,
|  |  | OPTION
| ) |  |

Value:
(((TRAN) != KER_NULL) && \
((TRAN)->usSize >= (SIZE)) && \
((TRAN)->btVersion >= NFC_EXT_TERM_TRAN_DATA_VERSION) && \
(((TRAN)->usOptions & (OPTION)) != 0))
NFC_EXT_TERM_TRAN_DATA_VERSION
#define NFC_EXT_TERM_TRAN_DATA_VERSION
EP Terminal transaction data struct version ID.
Definition: nfc_ext_data.h:28

check Terminal transaction option macro

## ◆ NFC_EXT_TERM_TRAN_DATA_RESET

#define NFC_EXT_TERM_TRAN_DATA_RESET | ( |  | DATA,
|  |  | SIZE
| ) |  |

Value:
do \
{ \
KER_MEM_SET(DATA, SIZE, 0, SIZE); \
(DATA)->usSize = SIZE; \
(DATA)->btVersion = NFC_EXT_TERM_TRAN_DATA_VERSION; \
(DATA)->pbtTranData = KER_NULL; \
} while (0)

Terminal transaction data reset macro definition.

## ◆ NFC_EXT_TERM_TRAN_DATA_VERSION

#define NFC_EXT_TERM_TRAN_DATA_VERSION 0x0001

EP Terminal transaction data struct version ID.

base version

## ◆ NFC_EXT_TERM_TRAN_OPT_CARD_ALREADY_DETECTED

#define NFC_EXT_TERM_TRAN_OPT_CARD_ALREADY_DETECTED 0x0020

Card already detected - skip initial card polling

## ◆ NFC_EXT_TERM_TRAN_OPT_DEBUG

#define NFC_EXT_TERM_TRAN_OPT_DEBUG 0x0001

Transaction options definitions.

Test mode with debug trace

## ◆ NFC_EXT_TERM_TRAN_OPT_DISABLE_EMV_MODE

#define NFC_EXT_TERM_TRAN_OPT_DISABLE_EMV_MODE 0x0004

Disable EMV Mode transactions

## ◆ NFC_EXT_TERM_TRAN_OPT_DISABLE_MS_MODE

#define NFC_EXT_TERM_TRAN_OPT_DISABLE_MS_MODE 0x0002

Disable MS Mode transactions

## ◆ NFC_EXT_TERM_TRAN_OPT_TRY_AGAIN_CD_CVM_IS_FINAL

#define NFC_EXT_TERM_TRAN_OPT_TRY_AGAIN_CD_CVM_IS_FINAL 0x0010

Treat Try Again Outcome with CD_CVM request as Final Outcome (not certified option for legacy interface)

## ◆ NFC_EXT_TERM_TRAN_OPT_TRY_AGAIN_IS_FINAL

#define NFC_EXT_TERM_TRAN_OPT_TRY_AGAIN_IS_FINAL 0x0008

Treat Try Again Outcome as Final Outcome (not certified option for legacy interface)