Amadis

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 14 Next »

ola

See ola.h

#include

#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

#define OLA_API_VERSION "2.1.6"

logf_function

typedef void (*logf_function)(char* str);

ola_get_api_version

const char *ola_get_api_version(void);

ola_get_implementation_version

const char *ola_get_implementation_version(void);

ola_initialize_at_start_up

tOLAError ola_initialize_at_start_up(uint8_t *tlv, uint16_t tlvLength);

ola_set_trace_function

void ola_set_trace_function(logf_function fct);

ola_emv

See ola_emv.h

#include

#include <stdint.h>

tOLAError

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;

tOlaEMVCoCVM

typedef enum
{
    cvmNone,
    cvmNoCvm,
    cvmSignature,
    cvmOnlinePin,
    cvmOnlinePin_Signature,
    cvmOfflinePinPlaintext,
    cvmOfflinePinPlaintext_Signature,
    cvmOfflinePinCiphered,
    cvmOfflinePinCiphered_Signature
} tOlaEMVCoCVM;

ola_emv_set_tag

tOLAError ola_emv_set_tag(
	uint32_t tag,
    uint8_t *value,
    uint16_t length
);

ola_emv_get_tag

tOLAError ola_emv_get_tag(
	uint32_t tag,
    uint8_t *value,
    uint16_t *length
);

ola_emv_get_cvm_results

tOLAError ola_emv_get_cvm_results(
	tOlaEMVCoCVM *cvm
);

ola_contact

See ola_contact.h

#include

#include "ola_emv.h"
#include <stdint.h>

tOlaModeContactTransaction

typedef enum
{
    metUndef = 0,
    metFull,
    metExtractPAN,
    metUnknown
} tOlaModeContactTransaction;

ola_contact_flush_aid_supported

void ola_contact_flush_aid_supported(void);

ola_contact_answer_to_reset

tOLAError ola_contact_answer_to_reset(const char* reader);

ola_contact_add_aid_supported

tOLAError  ola_contact_add_aid_supported(
		const uint8_t *aid,
	    uint8_t aidLength,
		int partial
);

ola_contact_build_candidate_list

tOLAError ola_contact_build_candidate_list(
		uint8_t *nb_candidates,
	    int *pse
);

ola_contact_get_tag_from_candidate

tOLAError ola_contact_get_tag_from_candidate(
		uint8_t candidate,
	    uint32_t tag,
		uint8_t *value,
	    uint16_t *length
);

ola_contact_final_select_candidate

tOLAError ola_contact_final_select_candidate(uint8_t candidate);

ola_contact_initiate_transaction

tOLAError ola_contact_initiate_transaction(
		tOlaModeContactTransaction mode
);

ola_contact_complete_transaction

tOLAError ola_contact_complete_transaction(
		const uint8_t *authorResponseCode,
	    const uint8_t *issuerAuthenticationData,
	    uint8_t issuerAuthenticationData_length
);

ola_contact_clean

void  ola_contact_clean(void);

ola_contactless

See ola_contactless.h

#define

#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

  • No labels