src/emv_apdu.c File Reference

#include <ccid.h>
#include <list.h>
#include <emv.h>
#include <ber.h>
#include "emv-internal.h"
Include dependency graph for emv_apdu.c:

Go to the source code of this file.

Functions

static int do_sel (emv_t e, uint8_t p1, uint8_t p2, const uint8_t *name, size_t nlen)
int _emv_select (emv_t e, const uint8_t *name, size_t nlen)
int _emv_select_next (emv_t e, const uint8_t *name, size_t nlen)
int _emv_read_record (emv_t e, uint8_t sfi, uint8_t record)
int _emv_get_data (emv_t e, uint8_t p1, uint8_t p2)
int _emv_verify (emv_t e, uint8_t fmt, const uint8_t *pin, uint8_t plen)
int _emv_get_proc_opts (emv_t e, const uint8_t *dol, uint8_t len)
int _emv_generate_ac (emv_t e, uint8_t ref, const uint8_t *data, uint8_t len)
_private int _emv_int_authenticate (emv_t e, const uint8_t *data, uint8_t len)

Function Documentation

int _emv_generate_ac ( emv_t  e,
uint8_t  ref,
const uint8_t *  data,
uint8_t  len 
)

Definition at line 220 of file emv_apdu.c.

References _emv_ccid_error(), _emv_icc_error(), chipcard_transact(), _emv::e_dev, _emv::e_xfr, xfr_reset(), xfr_rx_sw1(), xfr_rx_sw2(), xfr_tx_buf(), and xfr_tx_byte().

Referenced by emv_generate_ac().

Here is the call graph for this function:

Here is the caller graph for this function:

int _emv_get_data ( emv_t  e,
uint8_t  p1,
uint8_t  p2 
)

Definition at line 111 of file emv_apdu.c.

References _emv_ccid_error(), _emv_icc_error(), chipcard_transact(), _emv::e_dev, _emv::e_xfr, xfr_reset(), xfr_rx_sw1(), xfr_rx_sw2(), and xfr_tx_byte().

Referenced by atc(), and ptc().

Here is the call graph for this function:

Here is the caller graph for this function:

int _emv_get_proc_opts ( emv_t  e,
const uint8_t *  dol,
uint8_t  len 
)

Definition at line 176 of file emv_apdu.c.

References _emv_ccid_error(), _emv_icc_error(), chipcard_transact(), _emv::e_dev, _emv::e_xfr, xfr_reset(), xfr_rx_sw1(), xfr_rx_sw2(), xfr_tx_buf(), and xfr_tx_byte().

Referenced by get_aip().

Here is the call graph for this function:

Here is the caller graph for this function:

_private int _emv_int_authenticate ( emv_t  e,
const uint8_t *  data,
uint8_t  len 
)

Definition at line 265 of file emv_apdu.c.

References _emv_ccid_error(), _emv_icc_error(), chipcard_transact(), _emv::e_dev, _emv::e_xfr, xfr_reset(), xfr_rx_sw1(), xfr_rx_sw2(), xfr_tx_buf(), and xfr_tx_byte().

Referenced by verify_dynamic_sig().

Here is the call graph for this function:

Here is the caller graph for this function:

int _emv_read_record ( emv_t  e,
uint8_t  sfi,
uint8_t  record 
)

Definition at line 68 of file emv_apdu.c.

References _emv_ccid_error(), _emv_icc_error(), chipcard_transact(), _emv::e_dev, _emv::e_xfr, xfr_reset(), xfr_rx_sw1(), xfr_rx_sw2(), and xfr_tx_byte().

Referenced by emv_appsel_pse(), and read_sfi().

Here is the call graph for this function:

Here is the caller graph for this function:

int _emv_select ( emv_t  e,
const uint8_t *  name,
size_t  nlen 
)

Definition at line 58 of file emv_apdu.c.

References do_sel().

Referenced by emv_app_select_aid(), emv_app_select_pse(), and emv_appsel_pse().

Here is the call graph for this function:

Here is the caller graph for this function:

int _emv_select_next ( emv_t  e,
const uint8_t *  name,
size_t  nlen 
)

Definition at line 63 of file emv_apdu.c.

References do_sel().

Referenced by emv_app_select_aid_next().

Here is the call graph for this function:

Here is the caller graph for this function:

int _emv_verify ( emv_t  e,
uint8_t  fmt,
const uint8_t *  pin,
uint8_t  plen 
)

Definition at line 153 of file emv_apdu.c.

References _emv_ccid_error(), _emv_icc_error(), chipcard_transact(), _emv::e_dev, _emv::e_xfr, xfr_reset(), xfr_rx_sw1(), xfr_tx_buf(), and xfr_tx_byte().

Referenced by emv_cvm_pin().

Here is the call graph for this function:

Here is the caller graph for this function:

static int do_sel ( emv_t  e,
uint8_t  p1,
uint8_t  p2,
const uint8_t *  name,
size_t  nlen 
) [static]

Definition at line 13 of file emv_apdu.c.

References _emv_ccid_error(), _emv_icc_error(), chipcard_transact(), _emv::e_dev, _emv::e_xfr, xfr_reset(), xfr_rx_sw1(), xfr_rx_sw2(), xfr_tx_buf(), and xfr_tx_byte().

Referenced by _emv_select(), and _emv_select_next().

Here is the call graph for this function:

Here is the caller graph for this function:

Generated on Sun Jan 2 08:35:17 2011 for ccid-utils by  doxygen 1.6.3