sc-hsm-embedded
src/ctccid/usb_device.c File Reference
#include <stdio.h>
#include <string.h>
#include <malloc.h>
#include <libusb-1.0/libusb.h>
#include "usb_device.h"

Functions

int USB_Open (unsigned short pn, usb_device_t **device)
int USB_Close (usb_device_t **device)
int USB_Write (usb_device_t *device, unsigned int length, unsigned char *buffer)
int USB_Read (usb_device_t *device, unsigned int *length, unsigned char *buffer)

Function Documentation

int USB_Close ( usb_device_t **  device)

Close USB device and free allocated resources

Parameters:
deviceStructure with device specific data
Returns:
Status code USB_OK, ERR_USB
int USB_Open ( unsigned short  pn,
usb_device_t **  device 
)

Open USB device at the specified port and allocate necessary resources

Parameters:
pnPort number
deviceStructure holding device specific data
Returns:
Status code USB_OK, ERR_NO_READER, ERR_USB
int USB_Read ( usb_device_t device,
unsigned int *  length,
unsigned char *  buffer 
)

Read data block from specified USB device using bulk transfer

Parameters:
deviceDevice specific data
lengthLength of data buffer
bufferData buffer
Returns:
Status code USB_OK, ERR_USB
int USB_Write ( usb_device_t device,
unsigned int  length,
unsigned char *  buffer 
)

Write data block to specified USB device using bulk transfer

Parameters:
deviceDevice specific data
lengthLength of data to write
bufferData buffer
Returns:
Status code USB_OK, ERR_USB