OpenSSL ECC Engine  1.0
OpenSSL Engine implementation using ATECC508 for ECC key storage, ECDSA sign/verify, and ECDH
Functions
engine_atecc_binder.c File Reference
#include <stdint.h>
#include <openssl/engine.h>
#include <crypto/ecdh/ech_locl.h>
#include <crypto/ecdsa/ecs_locl.h>
#include <crypto/asn1/asn1_locl.h>
#include "ecc_meth.h"

Functions

void ENGINE_load_ateccx08 (void)
 Load ATECCx08 Engine. More...
 
int eccx08_destroy (ENGINE *e)
 Deinitialize the ateccx08 engine. Destructor (complements the "ENGINE_ateccx08()" constructor) More...
 
int eccx08_init (ENGINE *e)
 Initialization the ateccx08 engine. More...
 
int eccx08_finish (ENGINE *e)
 Complete all functions before deinitialization of the ateccx08 engine. More...
 
int eccx08_ctrl (ENGINE *e, int cmd, long i, void *p, void(*f)())
 Call a function of the ateccx08 engine depending on provided command. This is an extension of OpenSSL: there is no openssl cli command to call this function. See run_engine_cmds() function from the tlsutils.c file for details. More...
 

Function Documentation

int eccx08_ctrl ( ENGINE *  e,
int  cmd,
long  i,
void *  p,
void(*)()  f 
)

Call a function of the ateccx08 engine depending on provided command. This is an extension of OpenSSL: there is no openssl cli command to call this function. See run_engine_cmds() function from the tlsutils.c file for details.

Parameters
[in]eA pointer to the ENGINE structure
[in]cmdA command to execute. For the full list of commands see ECCX08_CMD_* defines in the ecc_meth.h file
[in]iAn integer parameter of the command
[in,out]pA string parameter of the command
[in]fA function pointer parameter of the command
Returns
ATCA_SUCCESS for success
int eccx08_destroy ( ENGINE *  e)

Deinitialize the ateccx08 engine. Destructor (complements the "ENGINE_ateccx08()" constructor)

Parameters
[in]eA pointer to Engine structure that completely describes the engine
Returns
For success return 1
int eccx08_finish ( ENGINE *  e)

Complete all functions before deinitialization of the ateccx08 engine.

Parameters
[in]eA pointer to Engine structure that completely describes the engine
Returns
1 for success
int eccx08_init ( ENGINE *  e)

Initialization the ateccx08 engine.

Parameters
[in]eA pointer to Engine structure that completely describes the engine
Returns
For success return 1
void ENGINE_load_ateccx08 ( void  )

Load ATECCx08 Engine.