ISARA Radiate Key State Manager  Version 1.2
A framework for safe storage of LMS private key state.
ikm_io.h File Reference

Data Structures

struct  ikm_IOCallbacks
 

Typedefs

typedef struct ikm_IO_struct ikm_IO
 

Functions

IQR_API ikm_retval ikm_IOInterfaceCreate (const ikm_IOCallbacks *cb, void *user_ctx, ikm_IO **io)
 
IQR_API_UNENFORCED_RETURN ikm_retval ikm_IOInterfaceDestroy (ikm_IO **io)
 
IQR_API ikm_retval ikm_IOCreateSimpleFileIO (const char *path, ikm_IO **io)
 

Typedef Documentation

typedef struct ikm_IO_struct ikm_IO

Input/Output interface object.

Function Documentation

IQR_API ikm_retval ikm_IOCreateSimpleFileIO ( const char *  path,
ikm_IO **  io 
)

Create a simple file IO interface.

This function creates an ikm_IO object that works with the file system. In order to eliminate file name collisions, the path should be unique per key pair. The path should point to a directory where multiple files will be stored.

Parameters
[in]pathThe path to the storage.
[out]ioA pointer to an IO interface object.
Returns
IKM_OK on success, or a value from ikm_retval.h when an error occurs.
IQR_API ikm_retval ikm_IOInterfaceCreate ( const ikm_IOCallbacks cb,
void *  user_ctx,
ikm_IO **  io 
)

Create and initialize an IO interface object.

Parameters
[in]cbA set of function pointers implementing an IO interface.
[in,out]user_ctxCustom user data to be passed into the IO interface callbacks.
[out]ioThe resulting IO object.
Returns
IKM_OK on success, or a value from ikm_retval.h when an error occurs.
IQR_API_UNENFORCED_RETURN ikm_retval ikm_IOInterfaceDestroy ( ikm_IO **  io)

Destroy an IO interface object.

Parameters
[in,out]ioA pointer to an IO interface object to be destroyed. The pointer is automatically set to NULL.
Returns
IKM_OK on success, or a value from ikm_retval.h when an error occurs.

Detailed Description

ISARA Radiate Key State Manager's IO interface object APIs.

The IO interface object provides a generic interface for performing Input/Output operations with data storage.

License
The code and other content set out herein is not in the public domain, is considered a trade secret and is confidential to ISARA Corporation. Use, reproduction or distribution, in whole or in part, of such code or other content is strictly prohibited except by express written permission of ISARA Corporation. Please contact ISARA Corporation at info@.nosp@m.isar.nosp@m.a.com for more information.