API _Version _Revision | Description |
---|---|
_OLA _version 2.1.6 _revision 23819 |
ola | ||
---|---|---|
See ola.h | ||
| #include "ola_tags_dictionary.h" #include "ola_emv.h" /// Generic EMV API #include "ola_publickey.h" /// Generic Public Key configuration API #include "ola_contactless.h" /// Generic Contacless Processing API #include "ola_contact.h" /// Generic Contact Processing API | |
| #define OLA_API_VERSION "2.1.6" | |
| typedef void (*logf_function)(char* str); | |
| const char *ola_get_api_version(void); | |
| const char *ola_get_implementation_version(void); | |
| tOLAError ola_initialize_at_start_up(uint8_t *tlv, uint16_t tlvLength); | |
| void ola_set_trace_function(logf_function fct); |
ola_emv | ||
---|---|---|
See ola_emv.h | ||
| #include <stdint.h> | |
| typedef enum { OLA_OK, OLA_CARD_MUTE, OLA_CARD_BLOCKED, OLA_MAX_REACHED, OLA_NO_CANDIDATE, OLA_CONTACT_NEW_SELECTION, OLA_CONTACT_SELECTION_ERROR, OLA_CONDITIONS_NOT_SATISFIED, OLA_ACCEPTED, OLA_NOT_ACCEPTED, OLA_OFFLINE_ACCEPTED, OLA_OFFLINE_DECLINED, OLA_GO_ONLINE, OLA_DECLINED, OLA_MISSING_DATA, OLA_PINPAD_ERROR, OLA_PARAM_ERROR, OLA_NOT_IMPLEMENTED, OLA_ERROR, OLA_CARD_ERROR, OLA_CANCEL, OLA_PUBLIC_KEY_OK, OLA_PUBLIC_KEY_MISSING, OLA_PUBLIC_KEY_MAX_REACHED, OLA_PUBLIC_KEY_END, OLA_PUBLIC_KEY_ERROR, OLA_CARD_REMOVED } tOLAError; | |
| typedef enum { cvmNone, cvmNoCvm, cvmSignature, cvmOnlinePin, cvmOnlinePin_Signature, cvmOfflinePinPlaintext, cvmOfflinePinPlaintext_Signature, cvmOfflinePinCiphered, cvmOfflinePinCiphered_Signature } tOlaEMVCoCVM; | |
| tOLAError ola_emv_set_tag( uint32_t tag, uint8_t *value, uint16_t length ); | |
| tOLAError ola_emv_get_tag( uint32_t tag, uint8_t *value, uint16_t *length ); | |
| tOLAError ola_emv_get_cvm_results( tOlaEMVCoCVM *cvm ); |
ola_contact | ||
---|---|---|
See ola_contact.h | ||
| #include "ola_emv.h" #include <stdint.h> | |
| typedef enum { metUndef = 0, metFull, metExtractPAN, metUnknown } tOlaModeContactTransaction; | |
| void ola_contact_flush_aid_supported(void); | |
| tOLAError ola_contact_answer_to_reset(const char* reader); | |
| tOLAError ola_contact_add_aid_supported( const uint8_t *aid, uint8_t aidLength, int partial ); | |
| tOLAError ola_contact_build_candidate_list( uint8_t *nb_candidates, int *pse ); | |
| tOLAError ola_contact_get_tag_from_candidate( uint8_t candidate, uint32_t tag, uint8_t *value, uint16_t *length ); | |
| tOLAError ola_contact_final_select_candidate(uint8_t candidate); | |
| tOLAError ola_contact_initiate_transaction( tOlaModeContactTransaction mode ); | |
| tOLAError ola_contact_complete_transaction( const uint8_t *authorResponseCode, const uint8_t *issuerAuthenticationData, uint8_t issuerAuthenticationData_length ); | |
| void ola_contact_clean(void); |
ola_contactless | ||
---|---|---|
See ola_contactless.h | ||
| #include "ola_emv.h" #include <stdint.h> | |
| #define OLA_KERNEL_ID_MASTERCARD 2 #define OLA_KERNEL_ID_VISA 3 #define OLA_KERNEL_ID_AMEX 4 #define OLA_KERNEL_ID_JCB 5 #define OLA_KERNEL_ID_DISCOVER 6 #define OLA_KERNEL_ID_CUP 7 #define OLA_MSD_ID_APPROVED 0x03 #define OLA_MSD_ID_NOT_AUTHORISED 0x07 #define OLA_MSD_ID_PLEASE_INSERT_OR_SWIPE_CARD 0x18 #define OLA_MSD_ID_AUTHORISING_PLEASE_WAIT 0x1B #define OLA_MSD_ID_INSERT_SWIPE_OR_TRY_ANOTHER_CARD 0x1C #define OLA_MSD_ID_SEE_PHONE_FOR_INSTRUCTIONS 0x20 | |
| typedef enum { ctsNone, ctsPreprocess, ctsBuildCandidate, ctsFinalSelect, ctsActivate } tOlaContactlessTransactionStep; | |
| typedef enum { outcNone, outcSelectNext, outcTryAgain, outcApproved, outcDeclined, outcOnlineRequest, outcTryAnotherInterface, outcEndApplication } tOlaOutcome; | |
| typedef enum { spNoStart, spStartA, spStartB, spStartC, spStartD, } tOlaStartPoint; | |
| typedef enum { ordNone, ordEmv, ordAny } tOlaOnlineResponseData; | |
| typedef enum { aipNone, aipContactChip, aipMagneticStripe } tOlaAlternateInterfacePreference; | |
| typedef enum { cvmclNone, cvmclNoCvm, cvmclSignature, cvmclOnlinePin, cvmclConfirmationCodeVerified } tOlaCVMethodContactless; | |
| typedef enum { staNone, staNotReady, staIdle, staReadyToRead, staProcessing, staCardReadSuccessfully, staProcessingError } tOlaStatus; | |
| typedef enum { vqNone, vqAmount, vqBalance } tOlaValueQualifier; | |
| typedef struct { tOlaOutcome outCome; tOlaStartPoint startingPoint; tOlaOnlineResponseData onlineResponseData; tOlaCVMethodContactless cvm; int UIReqOnOutcomePresent; int UIReqOnRestartPresent; int receipt; int dataRecordPresent; int discretionaryDataPresent; tOlaAlternateInterfacePreference alternateInterfacePreference; uint32_t fieldOffReq; uint32_t removalTimeout; } tOlaOutcomeParameter; | |
| typedef struct { uint8_t messageIdentifier; tOlaStatus status; uint32_t holdTime; uint8_t languagePreference[8]; // List of languages, ISO 639-1 representation tOlaValueQualifier valueQualifier; uint8_t value[6]; // BCD uint8_t currencyCode[2]; // Numeric ISO 4217 } tOlaUIRequest; | |
ola_publickey | ||
---|---|---|
See ola_publickey.h | ||
ola_terminal | ||
---|---|---|
See ola_terminal.h | ||
|