Libu2f-emu
0.0.0
Universal 2nd Factor (U2F) Emulation C Library
|
#include <stdlib.h>
#include "transport.h"
#include "u2f-emu.h"
#include "u2f-vdev.h"
#include "usb/usb.h"
Functions | |
u2f_emu_rc | u2f_emu_vdev_send (u2f_emu_vdev *vdev, u2f_emu_transport transport_type, const void *data, size_t size) |
Ask an U2F virtual emulated device to process input data from a transport. More... | |
bool | u2f_emu_vdev_has_response (u2f_emu_vdev *vdev, u2f_emu_transport transport_type) |
Check if an U2F virtual emulated device has response data on a transport to a previous processed data. More... | |
size_t | u2f_emu_vdev_get_response (u2f_emu_vdev *vdev, u2f_emu_transport transport_type, uint8_t **data) |
Get a response from an U2F virtual emulated device on a transport. More... | |
void | u2f_emu_vdev_free_response (uint8_t *data) |
Free a response from an U2F virtual emulated device. More... | |
u2f_emu_rc | u2f_emu_vdev_set_apdu (u2f_emu_vdev *vdev, u2f_emu_transport transport_type, u2f_emu_apdu apdu) |
Set the apdu length of an U2F virtual emultated device on a transport. More... | |
static u2f_emu_rc | u2f_emu_vdev_base_new (u2f_emu_vdev **vdev_ref) |
Instantiate a new U2F virtual emulated device base, with the transport configuration. More... | |
u2f_emu_rc | u2f_emu_vdev_new_from_dir (u2f_emu_vdev **vdev_ref, const char *pathname) |
Instantiate a new U2F virtual emulated device from a setup dir. More... | |
u2f_emu_rc | u2f_emu_vdev_new_ephemeral (u2f_emu_vdev **vdev_ref) |
Instantiate a new ephemeral U2F virtual emulated device. More... | |
u2f_emu_rc | u2f_emu_vdev_new (u2f_emu_vdev **vdev_ref, const struct u2f_emu_vdev_setup *info) |
Instantiate a new U2F virtual emulated device. More... | |
void | u2f_emu_vdev_free (u2f_emu_vdev *vdev) |
Free an U2F virtual emulated device. More... | |
|
static |
Instantiate a new U2F virtual emulated device base, with the transport configuration.
vdev_ref | The virtual device reference. |
void u2f_emu_vdev_free | ( | u2f_emu_vdev * | vdev | ) |
Free an U2F virtual emulated device.
vdev | The virtual device. |
void u2f_emu_vdev_free_response | ( | uint8_t * | data | ) |
Free a response from an U2F virtual emulated device.
data | The data buffer of the response. |
size_t u2f_emu_vdev_get_response | ( | u2f_emu_vdev * | vdev, |
u2f_emu_transport | transport_type, | ||
uint8_t ** | data | ||
) |
Get a response from an U2F virtual emulated device on a transport.
vdev | The virtual device. |
transport_type | The associated transport. |
data | The data ref buffer to put the response. |
bool u2f_emu_vdev_has_response | ( | u2f_emu_vdev * | vdev, |
u2f_emu_transport | transport_type | ||
) |
Check if an U2F virtual emulated device has response data on a transport to a previous processed data.
vdev | The virtual device. |
transport_type | The associated transport. |
u2f_emu_rc u2f_emu_vdev_new | ( | u2f_emu_vdev ** | vdev_ref, |
const struct u2f_emu_vdev_setup * | info | ||
) |
Instantiate a new U2F virtual emulated device.
vdev_ref | The virtual device reference. |
info | The setup structure for device configuration. |
u2f_emu_rc u2f_emu_vdev_new_ephemeral | ( | u2f_emu_vdev ** | vdev_ref | ) |
Instantiate a new ephemeral U2F virtual emulated device.
vdev_ref | The virtual device reference. |
u2f_emu_rc u2f_emu_vdev_new_from_dir | ( | u2f_emu_vdev ** | vdev_ref, |
const char * | pathname | ||
) |
Instantiate a new U2F virtual emulated device from a setup dir.
vdev_ref | The virtual device reference. |
pathname | The pathname of the setup dir for the device configuration. |
u2f_emu_rc u2f_emu_vdev_send | ( | u2f_emu_vdev * | vdev, |
u2f_emu_transport | transport_type, | ||
const void * | data, | ||
size_t | size | ||
) |
Ask an U2F virtual emulated device to process input data from a transport.
vdev | The virtual device. |
transport_type | The associated transport. |
data | The input data to process. |
size | The size of the input data in bytes. |
u2f_emu_rc u2f_emu_vdev_set_apdu | ( | u2f_emu_vdev * | vdev, |
u2f_emu_transport | transport_type, | ||
u2f_emu_apdu | apdu | ||
) |
Set the apdu length of an U2F virtual emultated device on a transport.
vdev | The virtual device. |
transport_type | The associated transport. |
apdu | The apdu length. |