Agnos provides a set of EMV core primitives which support EMV transaction flow. These primitives are used by:
CT payment applications (see emvco.c as example)
CL card processing applications (alias CL kernels)
C Structures
tTransactionalContext (agnos.h)
tADFList (selection.h)
tADF (selection.h)
tPSE (selection.h)
Callbacks
typedef void (*tGetDataCallback)(tBoolean lastRead, tBoolean *next)
typedef void (*tBuildDOLCallback)(tWord tag, tByte length, tByte *DOLData)
typedef void (*tStateCallback)(tAgnosState currentState, tBoolean *stop, tBoolean *bypass)
Primitives
Names | Comments |
---|---|
agnGetVersionNumber | Provide EMV core engine version |
agnOpenSession | Open a CT session to initiate an EMV transaction flow |
agnOpenSessionCL | Open a CL session to initiate an EMV transaction flow |
agnInititateEMVTransaction | Initiate/Resume an EMV transaction |
agnCompleteEMVTransaction | Complete a transaction as per EMVCo definition |
agnCloseSession | Close a transaction flow |
agnSetAgnosDatabase | |
agnSetKernelStatus | |
agnSetEMVTag | |
agnOverwriteTag | |
agnRemoveTag | |
agnGetEMVTag | |
agnGetAllTags | |
agnGetDatabase | |
agnIsEMVTagKnown | |
agnIsEMVTagPresent | |
agnIsEMVTagEmpty | |
agnIsEMVTagNotEmpty | |
agnSetExitState | |
agnSetParsingCallback | |
agnSetStateCallback | |
agnSetBuilDOLCallback | |
agnORTVR | OR a specific TVR’s bit to 1 |
agnORAgnosTVR | OR a specific Agnos TVR’s bit to 1 |
agnSetAgnosTVR | Set a specific Agnos TVR byte value |