#pragma once #ifdef __cplusplus extern "C" { #endif #include #include "keypair.h" #include "sharedkey.h" typedef struct KeyPair (*KeyPairCreator)(); typedef void (*KeyPairDeleter)(struct KeyPair); typedef struct SharedKey (*SharedKeyDeriver)(struct KeyPair, unsigned char*, bool); typedef void (*SharedKeyDeleter)(struct SharedKey); struct Api { KeyPairCreator create_key_pair; KeyPairDeleter free_key_pair; SharedKeyDeriver derive_shared_key; SharedKeyDeleter free_shared_key; }; #ifdef __cplusplus } #endif