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

nfc_ep_lib.h
Go to the documentation of this file.
1 #ifndef NFC_EP_LIB_H
2 #define NFC_EP_LIB_H
3
4 /* *********************** NFC Entry Point library export functions ************************ */
8 /* ***************************************************************************************** */
9
10 /* ************************************** epNfcInit **************************************** */
26 extern KER_RES KER_API epNfcInit(KER_CTX_INIT_PARAM const KER_VOID* pConfigID, KER_INT16U usConfigIDLen, const KER_CHAR* pchEPFiles, KER_INT16U usEPFilesLen);
27
28 /* ************************************* epNfcDeInit *************************************** */
39 extern KER_RES KER_API epNfcDeInit(KER_CTX_SINGLE_PARAM);
40
41 /* ************************************** epNfcVerInfo ************************************* */
53 extern KER_BOOL KER_API epNfcVerInfo(KER_CTX_PARAM const KER_CHAR** ppchEmvVer, KER_INT16U* pusEmvVerLen, const KER_CHAR** ppchLibVer, KER_INT16U* pusLibVerLen);
54
55 /* ****************************** Transaction data structure ******************************* */
61 typedef struct tag_EP_TRAN EP_TRAN;
62
63 /* *********************************** epPosPrepareNewTran ********************************* */
84 extern KER_RES KER_API epPosPrepareNewTran(KER_CTX_PARAM const NFC_EXT_TERM_TRAN_DATA* pTermTranData, EP_TRAN** ppTran, NFC_OUTCOME** ppOutcome);
85
86 /* **************************************** epPosTran ************************************** */
122 extern KER_RES KER_API epPosTran(KER_CTX_PARAM EP_TRAN* pTran, KER_INT32U ulTimeout, KER_INT16U usExtCardTypes,
123 KER_INT16U* pusCardType, KER_BYTE* pbtUID, KER_INT16U* pusUIDLen, NFC_OUTCOME** ppOutcome);
124
125 /* ***************************** epPosCancelTransactionCheck ******************************* */
135 extern KER_BOOL epPosCancelTransactionCheck(KER_CTX_SINGLE_PARAM);
136
137 /* ************************************ epPosTranRestart *********************************** */
181 extern KER_RES KER_API epPosTranRestart(KER_CTX_PARAM EP_TRAN* pTran, const NFC_EXT_TERM_RESTART_DATA* pTermRestartData, KER_INT32U ulTimeout, KER_INT16U usExtCardTypes,
182 KER_INT16U* pusCardType, KER_BYTE* pbtUID, KER_INT16U* pusUIDLen, NFC_OUTCOME** ppOutcome);
183
184 /* ************************************* epPosTranRelease ********************************** */
198 extern KER_RES KER_API epPosTranRelease(KER_CTX_PARAM EP_TRAN* pTran);
199
200 /* *************************************** epNfcGetData ************************************ */
215 extern KER_RES KER_API epNfcGetData(KER_CTX_PARAM EP_TRAN* pTran, KER_INT16U usOptions, KER_BYTE* pbtData, KER_INT16U* pusDataLen);
216
217 /* ************************************ epNfcGetDataByTag ********************************** */
235 extern KER_RES KER_API epNfcGetDataByTag(KER_CTX_PARAM EP_TRAN* pTran, KER_INT16U usOptions, const KER_BYTE* pbtTag, KER_BYTE btTagSize, KER_BYTE* pbtData, KER_INT16U* pusDataSize);
236
237 /* ********************************** epNfcGetDataByTagList ******************************** */
254 extern KER_RES KER_API epNfcGetDataByTagList(KER_CTX_PARAM EP_TRAN* pTran, KER_INT16U usOptions, const KER_BYTE* pbtTagList, KER_INT16U usTagListSize, KER_BYTE* pbtData, KER_INT16U* pusDataSize);
255
256 /* ************************************ epNfcGetDataByID *********************************** */
272 extern KER_RES KER_API epNfcGetDataByID(KER_CTX_PARAM EP_TRAN* pTran, KER_INT16U usID, KER_BYTE* pbtData, KER_INT16U* pusDataSize);
273
274 /* ************************************* epCheckOption ************************************* */
279 #define NFC_EP_OPT_DEBUG 0x0001
280 #define NFC_EP_OPT_RRP 0x0002
297 extern KER_BOOL KER_API epCheckOption(KER_CTX_PARAM EP_TRAN* pTran, KER_INT16U usOption, KER_INT16U usParam, KER_VOID* pParam);
298
299
300 #endif /* NFC_EP_LIB_H */
KER_VOID
void KER_VOID
Definition: emv_platform.h:66
KER_BOOL
KER_INT8U KER_BOOL
Definition: emv_platform.h:67
KER_BYTE
uint8_t KER_BYTE
Definition: emv_platform.h:70
KER_RES
KER_INT16U KER_RES
Definition: emv_platform.h:68
KER_INT32U
unsigned int KER_INT32U
Definition: emv_platform.h:63
KER_INT16U
unsigned short KER_INT16U
Definition: emv_platform.h:61
KER_CHAR
char KER_CHAR
Definition: emv_platform.h:65
epPosTran
KER_RES KER_API epPosTran(KER_CTX_PARAM EP_TRAN *pTran, KER_INT32U ulTimeout, KER_INT16U usExtCardTypes, KER_INT16U *pusCardType, KER_BYTE *pbtUID, KER_INT16U *pusUIDLen, NFC_OUTCOME **ppOutcome)
Initiates new transaction.
epPosTranRelease
KER_RES KER_API epPosTranRelease(KER_CTX_PARAM EP_TRAN *pTran)
Releases transaction context.
epNfcGetDataByTagList
KER_RES KER_API epNfcGetDataByTagList(KER_CTX_PARAM EP_TRAN *pTran, KER_INT16U usOptions, const KER_BYTE *pbtTagList, KER_INT16U usTagListSize, KER_BYTE *pbtData, KER_INT16U *pusDataSize)
transaction data request
epNfcVerInfo
KER_BOOL KER_API epNfcVerInfo(KER_CTX_PARAM const KER_CHAR **ppchEmvVer, KER_INT16U *pusEmvVerLen, const KER_CHAR **ppchLibVer, KER_INT16U *pusLibVerLen)
Obtains emv kernel library version info.
epNfcDeInit
KER_RES KER_API epNfcDeInit(KER_CTX_SINGLE_PARAM)
Performs kernel de-initialization.
epNfcGetData
KER_RES KER_API epNfcGetData(KER_CTX_PARAM EP_TRAN *pTran, KER_INT16U usOptions, KER_BYTE *pbtData, KER_INT16U *pusDataLen)
Transaction data request.
epNfcGetDataByID
KER_RES KER_API epNfcGetDataByID(KER_CTX_PARAM EP_TRAN *pTran, KER_INT16U usID, KER_BYTE *pbtData, KER_INT16U *pusDataSize)
Obtain emv data by ID.
EP_TRAN
struct tag_EP_TRAN EP_TRAN
EP transaction handle.
Definition: nfc_ep_lib.h:61
epPosTranRestart
KER_RES KER_API epPosTranRestart(KER_CTX_PARAM EP_TRAN *pTran, const NFC_EXT_TERM_RESTART_DATA *pTermRestartData, KER_INT32U ulTimeout, KER_INT16U usExtCardTypes, KER_INT16U *pusCardType, KER_BYTE *pbtUID, KER_INT16U *pusUIDLen, NFC_OUTCOME **ppOutcome)
Restarts transaction for issuer update, cv-cvm confirmation, etc...
epPosPrepareNewTran
KER_RES KER_API epPosPrepareNewTran(KER_CTX_PARAM const NFC_EXT_TERM_TRAN_DATA *pTermTranData, EP_TRAN **ppTran, NFC_OUTCOME **ppOutcome)
Prepares new transaction.
epCheckOption
KER_BOOL KER_API epCheckOption(KER_CTX_PARAM EP_TRAN *pTran, KER_INT16U usOption, KER_INT16U usParam, KER_VOID *pParam)
Check options callback Define this function outside the lib to provide EP options.
KER_CTX_PARAM
#define KER_CTX_PARAM
Definition: emv_context.h:53
KER_CTX_INIT_PARAM
#define KER_CTX_INIT_PARAM
Definition: emv_context.h:63
KER_CTX_SINGLE_PARAM
#define KER_CTX_SINGLE_PARAM
Definition: emv_context.h:58
epPosCancelTransactionCheck
KER_BOOL epPosCancelTransactionCheck(KER_CTX_SINGLE_PARAM)
Checks for cancel transaction request from outside (polling mode)
epNfcGetDataByTag
KER_RES KER_API epNfcGetDataByTag(KER_CTX_PARAM EP_TRAN *pTran, KER_INT16U usOptions, const KER_BYTE *pbtTag, KER_BYTE btTagSize, KER_BYTE *pbtData, KER_INT16U *pusDataSize)
transaction data request
tag_NFC_EXT_TERM_RESTART_DATA
Terminal transaction restart data.
Definition: nfc_ext_data.h:144
tag_NFC_EXT_TERM_TRAN_DATA
Terminal transaction data structure.
Definition: nfc_ext_data.h:83
tag_NFC_OUTCOME
Outcome User Interface struct definition, version 0.
Definition: nfc_outcome.h:350