#include <ccid.h>#include <list.h>#include <emv.h>#include <ber.h>#include "emv-internal.h"#include <openssl/sha.h>#include <openssl/rsa.h>#include <openssl/engine.h>#include <gang.h>#include <mpool.h>#include <ctype.h>

Go to the source code of this file.
Functions | |
| uint8_t | _emv_sw1 (emv_t e) |
| uint8_t | _emv_sw2 (emv_t e) |
| int | _emsa_pss_decode (const uint8_t *msg, size_t msg_len, const uint8_t *em, size_t em_len) |
| static uint8_t * | construct_dol (emv_dol_cb_t cbfn, const uint8_t *ptr, size_t len, size_t *ret_len, void *priv) |
| uint8_t * | emv_construct_dol (emv_dol_cb_t cbfn, const uint8_t *ptr, size_t len, size_t *ret_len, void *priv) |
| uint8_t * | _emv_construct_dol (emv_dol_cb_t cbfn, const uint8_t *ptr, size_t len, size_t *ret_len, void *priv) |
| int | _emv_pin2pb (const char *pin, emv_pb_t pb) |
| const uint8_t * | emv_generate_ac (emv_t e, uint8_t ref, const uint8_t *tx, uint8_t len, size_t *rlen) |
| static void | do_emv_fini (emv_t e) |
| emv_app_t | emv_current_app (emv_t e) |
| emv_t | emv_init (chipcard_t cc) |
| void | emv_fini (emv_t e) |
| int _emsa_pss_decode | ( | const uint8_t * | msg, | |
| size_t | msg_len, | |||
| const uint8_t * | em, | |||
| size_t | em_len | |||
| ) |
Definition at line 25 of file emv.c.
Referenced by check_icc_cert(), check_pk_cert(), and check_ssa().

| uint8_t* _emv_construct_dol | ( | emv_dol_cb_t | cbfn, | |
| const uint8_t * | ptr, | |||
| size_t | len, | |||
| size_t * | ret_len, | |||
| void * | priv | |||
| ) |
Definition at line 157 of file emv.c.
References construct_dol().
Referenced by verify_dynamic_sig().


| int _emv_pin2pb | ( | const char * | pin, | |
| emv_pb_t | pb | |||
| ) |
Definition at line 163 of file emv.c.
References EMV_PIN_BLOCK_LEN.
| uint8_t _emv_sw1 | ( | emv_t | e | ) |
Definition at line 15 of file emv.c.
References _emv::e_xfr, and xfr_rx_sw1().
Referenced by _emv_icc_error(), and emv_cvm_pin().


| uint8_t _emv_sw2 | ( | emv_t | e | ) |
Definition at line 20 of file emv.c.
References _emv::e_xfr, and xfr_rx_sw2().
Referenced by _emv_icc_error().


| static uint8_t* construct_dol | ( | emv_dol_cb_t | cbfn, | |
| const uint8_t * | ptr, | |||
| size_t | len, | |||
| size_t * | ret_len, | |||
| void * | priv | |||
| ) | [static] |
Definition at line 83 of file emv.c.
References ber_tag_len(), and find_tag().
Referenced by _emv_construct_dol(), and emv_construct_dol().


| static void do_emv_fini | ( | emv_t | e | ) | [static] |
Definition at line 198 of file emv.c.
References _emv_free_applist(), _emv::e_afl, _emv::e_app, _emv::e_ca_pk, _emv::e_data, _emv::e_files, _emv::e_iss_pk, _emv::e_xfr, gang_free(), mpool_free(), and xfr_free().
Referenced by emv_fini(), and emv_init().


| uint8_t* emv_construct_dol | ( | emv_dol_cb_t | cbfn, | |
| const uint8_t * | ptr, | |||
| size_t | len, | |||
| size_t * | ret_len, | |||
| void * | priv | |||
| ) |
Definition at line 151 of file emv.c.
References construct_dol().
Referenced by do_dol().


Definition at line 220 of file emv.c.
References _emv::e_app.
Referenced by select_app(), and set_current().

| void emv_fini | ( | emv_t | e | ) |
Definition at line 261 of file emv.c.
References do_emv_fini().
Referenced by cp_emv_dealloc(), and do_emv_stuff().


| const uint8_t* emv_generate_ac | ( | emv_t | e, | |
| uint8_t | ref, | |||
| const uint8_t * | tx, | |||
| uint8_t | len, | |||
| size_t * | rlen | |||
| ) |
Definition at line 189 of file emv.c.
References _emv_generate_ac(), _emv::e_xfr, and xfr_rx_data().
Referenced by cp_gen_ac().


| emv_t emv_init | ( | chipcard_t | cc | ) |
Definition at line 225 of file emv.c.
References CHIPCARD_ACTIVE, chipcard_status(), do_emv_fini(), _emv::e_apps, _emv::e_data, _emv::e_dev, _emv::e_files, _emv::e_xfr, gang_new(), INIT_LIST_HEAD, mpool_free(), mpool_new(), and xfr_alloc().
Referenced by cp_emv_init(), and do_emv_stuff().


1.6.3