gwenhywfar  5.11.1beta
ct_be.h File Reference
#include <gwenhywfar/ct.h>
#include <gwenhywfar/inherit.h>
#include <gwenhywfar/buffer.h>
#include <gwenhywfar/hashalgo.h>

Go to the source code of this file.

Typedefs

Prototypes for Virtual Functions
typedef int GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_ACTIVATEKEY_FN) (GWEN_CRYPT_TOKEN *ct, uint32_t id, uint32_t gid)
 
typedef int GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_CHANGEPIN_FN) (GWEN_CRYPT_TOKEN *ct, int admin, uint32_t gid)
 
typedef int GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_CLOSE_FN) (GWEN_CRYPT_TOKEN *ct, int abandon, uint32_t gid)
 
typedef int GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_CREATE_FN) (GWEN_CRYPT_TOKEN *ct, uint32_t gid)
 
typedef int GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_DECIPHER_FN) (GWEN_CRYPT_TOKEN *ct, uint32_t keyId, GWEN_CRYPT_PADDALGO *a, const uint8_t *pInData, uint32_t inLen, uint8_t *pOutData, uint32_t *pOutLen, uint32_t gid)
 
typedef int GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_ENCIPHER_FN) (GWEN_CRYPT_TOKEN *ct, uint32_t keyId, GWEN_CRYPT_PADDALGO *a, const uint8_t *pInData, uint32_t inLen, uint8_t *pOutData, uint32_t *pOutLen, uint32_t gid)
 
typedef int GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_GENERATEKEY_FN) (GWEN_CRYPT_TOKEN *ct, uint32_t keyId, const GWEN_CRYPT_CRYPTALGO *a, uint32_t gid)
 
typedef const GWEN_CRYPT_TOKEN_CONTEXT *GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_GETCONTEXT_FN) (GWEN_CRYPT_TOKEN *ct, uint32_t id, uint32_t gid)
 
typedef int GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_GETCONTEXTIDLIST_FN) (GWEN_CRYPT_TOKEN *ct, uint32_t *pIdList, uint32_t *pCount, uint32_t gid)
 
typedef int GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_GETKEYIDLIST_FN) (GWEN_CRYPT_TOKEN *ct, uint32_t *pIdList, uint32_t *pCount, uint32_t gid)
 
typedef const GWEN_CRYPT_TOKEN_KEYINFO *GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_GETKEYINFO_FN) (GWEN_CRYPT_TOKEN *ct, uint32_t id, uint32_t flags, uint32_t gid)
 
typedef int GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_OPEN_FN) (GWEN_CRYPT_TOKEN *ct, int admin, uint32_t gid)
 
typedef int GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_SETCONTEXT_FN) (GWEN_CRYPT_TOKEN *ct, uint32_t id, const GWEN_CRYPT_TOKEN_CONTEXT *ctx, uint32_t gid)
 
typedef int GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_SETKEYINFO_FN) (GWEN_CRYPT_TOKEN *ct, uint32_t id, const GWEN_CRYPT_TOKEN_KEYINFO *ki, uint32_t gid)
 
typedef int GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_SIGN_FN) (GWEN_CRYPT_TOKEN *ct, uint32_t keyId, GWEN_CRYPT_PADDALGO *a, const uint8_t *pInData, uint32_t inLen, uint8_t *pSignatureData, uint32_t *pSignatureLen, uint32_t *pSeqCounter, uint32_t gid)
 
typedef int GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_VERIFY_FN) (GWEN_CRYPT_TOKEN *ct, uint32_t keyId, GWEN_CRYPT_PADDALGO *a, const uint8_t *pInData, uint32_t inLen, const uint8_t *pSignatureData, uint32_t signatureLen, uint32_t seqCounter, uint32_t gid)
 

Functions

Contructor
GWENHYWFAR_API GWEN_CRYPT_TOKENGWEN_Crypt_Token_new (GWEN_CRYPT_TOKEN_DEVICE dev, const char *typeName, const char *tokenName)
 
Setting CryptToken Information
GWENHYWFAR_API void GWEN_Crypt_Token_AddFlags (GWEN_CRYPT_TOKEN *ct, uint32_t f)
 
GWENHYWFAR_API void GWEN_Crypt_Token_SetFlags (GWEN_CRYPT_TOKEN *ct, uint32_t f)
 
GWENHYWFAR_API void GWEN_Crypt_Token_SetTokenName (GWEN_CRYPT_TOKEN *ct, const char *s)
 
GWENHYWFAR_API void GWEN_Crypt_Token_SubFlags (GWEN_CRYPT_TOKEN *ct, uint32_t f)
 
Interactive Helper Functions
GWENHYWFAR_API uint32_t GWEN_Crypt_Token_BeginEnterPin (GWEN_CRYPT_TOKEN *ct, GWEN_CRYPT_PINTYPE pt, uint32_t gid)
 
GWENHYWFAR_API int GWEN_Crypt_Token_EndEnterPin (GWEN_CRYPT_TOKEN *ct, GWEN_CRYPT_PINTYPE pt, int ok, uint32_t id)
 
GWENHYWFAR_API int GWEN_Crypt_Token_GetPin (GWEN_CRYPT_TOKEN *ct, GWEN_CRYPT_PINTYPE pt, GWEN_CRYPT_PINENCODING pe, uint32_t flags, unsigned char *pwbuffer, unsigned int minLength, unsigned int maxLength, unsigned int *pinLength, uint32_t gid)
 
GWENHYWFAR_API int GWEN_Crypt_Token_InsertCorrectToken (GWEN_CRYPT_TOKEN *ct, uint32_t gid)
 
GWENHYWFAR_API int GWEN_Crypt_Token_InsertToken (GWEN_CRYPT_TOKEN *ct, uint32_t gid)
 
GWENHYWFAR_API int GWEN_Crypt_Token_SetPinStatus (GWEN_CRYPT_TOKEN *ct, GWEN_CRYPT_PINTYPE pt, GWEN_CRYPT_PINENCODING pe, uint32_t flags, const unsigned char *buffer, unsigned int pinLength, int isOk, uint32_t gid)
 
Setter for Virtual Functions
GWEN_CRYPT_TOKEN_ACTIVATEKEY_FN GWEN_Crypt_Token_SetActivateKeyFn (GWEN_CRYPT_TOKEN *ct, GWEN_CRYPT_TOKEN_ACTIVATEKEY_FN f)
 
GWENHYWFAR_API GWEN_CRYPT_TOKEN_CHANGEPIN_FN GWEN_Crypt_Token_SetChangePinFn (GWEN_CRYPT_TOKEN *ct, GWEN_CRYPT_TOKEN_CHANGEPIN_FN f)
 
GWENHYWFAR_API GWEN_CRYPT_TOKEN_CLOSE_FN GWEN_Crypt_Token_SetCloseFn (GWEN_CRYPT_TOKEN *ct, GWEN_CRYPT_TOKEN_CLOSE_FN f)
 
GWENHYWFAR_API GWEN_CRYPT_TOKEN_CREATE_FN GWEN_Crypt_Token_SetCreateFn (GWEN_CRYPT_TOKEN *ct, GWEN_CRYPT_TOKEN_CREATE_FN f)
 
GWENHYWFAR_API GWEN_CRYPT_TOKEN_DECIPHER_FN GWEN_Crypt_Token_SetDecipherFn (GWEN_CRYPT_TOKEN *ct, GWEN_CRYPT_TOKEN_DECIPHER_FN f)
 
GWENHYWFAR_API GWEN_CRYPT_TOKEN_ENCIPHER_FN GWEN_Crypt_Token_SetEncipherFn (GWEN_CRYPT_TOKEN *ct, GWEN_CRYPT_TOKEN_ENCIPHER_FN f)
 
GWENHYWFAR_API GWEN_CRYPT_TOKEN_GENERATEKEY_FN GWEN_Crypt_Token_SetGenerateKeyFn (GWEN_CRYPT_TOKEN *ct, GWEN_CRYPT_TOKEN_GENERATEKEY_FN f)
 
GWENHYWFAR_API GWEN_CRYPT_TOKEN_GETCONTEXT_FN GWEN_Crypt_Token_SetGetContextFn (GWEN_CRYPT_TOKEN *ct, GWEN_CRYPT_TOKEN_GETCONTEXT_FN f)
 
GWENHYWFAR_API GWEN_CRYPT_TOKEN_GETCONTEXTIDLIST_FN GWEN_Crypt_Token_SetGetContextIdListFn (GWEN_CRYPT_TOKEN *ct, GWEN_CRYPT_TOKEN_GETCONTEXTIDLIST_FN f)
 
GWENHYWFAR_API GWEN_CRYPT_TOKEN_GETKEYIDLIST_FN GWEN_Crypt_Token_SetGetKeyIdListFn (GWEN_CRYPT_TOKEN *ct, GWEN_CRYPT_TOKEN_GETKEYIDLIST_FN f)
 
GWENHYWFAR_API GWEN_CRYPT_TOKEN_GETKEYINFO_FN GWEN_Crypt_Token_SetGetKeyInfoFn (GWEN_CRYPT_TOKEN *ct, GWEN_CRYPT_TOKEN_GETKEYINFO_FN f)
 
GWENHYWFAR_API GWEN_CRYPT_TOKEN_OPEN_FN GWEN_Crypt_Token_SetOpenFn (GWEN_CRYPT_TOKEN *ct, GWEN_CRYPT_TOKEN_OPEN_FN f)
 
GWENHYWFAR_API GWEN_CRYPT_TOKEN_SETCONTEXT_FN GWEN_Crypt_Token_SetSetContextFn (GWEN_CRYPT_TOKEN *ct, GWEN_CRYPT_TOKEN_SETCONTEXT_FN f)
 
GWENHYWFAR_API GWEN_CRYPT_TOKEN_SETKEYINFO_FN GWEN_Crypt_Token_SetSetKeyInfoFn (GWEN_CRYPT_TOKEN *ct, GWEN_CRYPT_TOKEN_SETKEYINFO_FN f)
 
GWENHYWFAR_API GWEN_CRYPT_TOKEN_SIGN_FN GWEN_Crypt_Token_SetSignFn (GWEN_CRYPT_TOKEN *ct, GWEN_CRYPT_TOKEN_SIGN_FN f)
 
GWENHYWFAR_API GWEN_CRYPT_TOKEN_VERIFY_FN GWEN_Crypt_Token_SetVerifyFn (GWEN_CRYPT_TOKEN *ct, GWEN_CRYPT_TOKEN_VERIFY_FN f)
 

Typedef Documentation

◆ GWEN_CRYPT_TOKEN_ACTIVATEKEY_FN

typedef int GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_ACTIVATEKEY_FN) (GWEN_CRYPT_TOKEN *ct, uint32_t id, uint32_t gid)

Definition at line 109 of file ct_be.h.

◆ GWEN_CRYPT_TOKEN_CHANGEPIN_FN

typedef int GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_CHANGEPIN_FN) (GWEN_CRYPT_TOKEN *ct, int admin, uint32_t gid)

Definition at line 107 of file ct_be.h.

◆ GWEN_CRYPT_TOKEN_CLOSE_FN

typedef int GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_CLOSE_FN) (GWEN_CRYPT_TOKEN *ct, int abandon, uint32_t gid)

Definition at line 33 of file ct_be.h.

◆ GWEN_CRYPT_TOKEN_CREATE_FN

typedef int GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_CREATE_FN) (GWEN_CRYPT_TOKEN *ct, uint32_t gid)

Definition at line 32 of file ct_be.h.

◆ GWEN_CRYPT_TOKEN_DECIPHER_FN

typedef int GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_DECIPHER_FN) (GWEN_CRYPT_TOKEN *ct, uint32_t keyId, GWEN_CRYPT_PADDALGO *a, const uint8_t *pInData, uint32_t inLen, uint8_t *pOutData, uint32_t *pOutLen, uint32_t gid)

Definition at line 92 of file ct_be.h.

◆ GWEN_CRYPT_TOKEN_ENCIPHER_FN

typedef int GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_ENCIPHER_FN) (GWEN_CRYPT_TOKEN *ct, uint32_t keyId, GWEN_CRYPT_PADDALGO *a, const uint8_t *pInData, uint32_t inLen, uint8_t *pOutData, uint32_t *pOutLen, uint32_t gid)

Definition at line 83 of file ct_be.h.

◆ GWEN_CRYPT_TOKEN_GENERATEKEY_FN

typedef int GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_GENERATEKEY_FN) (GWEN_CRYPT_TOKEN *ct, uint32_t keyId, const GWEN_CRYPT_CRYPTALGO *a, uint32_t gid)

Definition at line 102 of file ct_be.h.

◆ GWEN_CRYPT_TOKEN_GETCONTEXT_FN

typedef const GWEN_CRYPT_TOKEN_CONTEXT* GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_GETCONTEXT_FN) (GWEN_CRYPT_TOKEN *ct, uint32_t id, uint32_t gid)

Definition at line 53 of file ct_be.h.

◆ GWEN_CRYPT_TOKEN_GETCONTEXTIDLIST_FN

typedef int GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_GETCONTEXTIDLIST_FN) (GWEN_CRYPT_TOKEN *ct, uint32_t *pIdList, uint32_t *pCount, uint32_t gid)

Definition at line 49 of file ct_be.h.

◆ GWEN_CRYPT_TOKEN_GETKEYIDLIST_FN

typedef int GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_GETKEYIDLIST_FN) (GWEN_CRYPT_TOKEN *ct, uint32_t *pIdList, uint32_t *pCount, uint32_t gid)

Definition at line 35 of file ct_be.h.

◆ GWEN_CRYPT_TOKEN_GETKEYINFO_FN

typedef const GWEN_CRYPT_TOKEN_KEYINFO* GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_GETKEYINFO_FN) (GWEN_CRYPT_TOKEN *ct, uint32_t id, uint32_t flags, uint32_t gid)

Definition at line 39 of file ct_be.h.

◆ GWEN_CRYPT_TOKEN_OPEN_FN

typedef int GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_OPEN_FN) (GWEN_CRYPT_TOKEN *ct, int admin, uint32_t gid)

Definition at line 31 of file ct_be.h.

◆ GWEN_CRYPT_TOKEN_SETCONTEXT_FN

typedef int GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_SETCONTEXT_FN) (GWEN_CRYPT_TOKEN *ct, uint32_t id, const GWEN_CRYPT_TOKEN_CONTEXT *ctx, uint32_t gid)

Definition at line 57 of file ct_be.h.

◆ GWEN_CRYPT_TOKEN_SETKEYINFO_FN

typedef int GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_SETKEYINFO_FN) (GWEN_CRYPT_TOKEN *ct, uint32_t id, const GWEN_CRYPT_TOKEN_KEYINFO *ki, uint32_t gid)

Definition at line 44 of file ct_be.h.

◆ GWEN_CRYPT_TOKEN_SIGN_FN

typedef int GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_SIGN_FN) (GWEN_CRYPT_TOKEN *ct, uint32_t keyId, GWEN_CRYPT_PADDALGO *a, const uint8_t *pInData, uint32_t inLen, uint8_t *pSignatureData, uint32_t *pSignatureLen, uint32_t *pSeqCounter, uint32_t gid)

Definition at line 63 of file ct_be.h.

◆ GWEN_CRYPT_TOKEN_VERIFY_FN

typedef int GWENHYWFAR_CB(* GWEN_CRYPT_TOKEN_VERIFY_FN) (GWEN_CRYPT_TOKEN *ct, uint32_t keyId, GWEN_CRYPT_PADDALGO *a, const uint8_t *pInData, uint32_t inLen, const uint8_t *pSignatureData, uint32_t signatureLen, uint32_t seqCounter, uint32_t gid)

Definition at line 73 of file ct_be.h.

Function Documentation

◆ GWEN_Crypt_Token_AddFlags()

GWENHYWFAR_API void GWEN_Crypt_Token_AddFlags ( GWEN_CRYPT_TOKEN ct,
uint32_t  f 
)

◆ GWEN_Crypt_Token_BeginEnterPin()

GWENHYWFAR_API uint32_t GWEN_Crypt_Token_BeginEnterPin ( GWEN_CRYPT_TOKEN ct,
GWEN_CRYPT_PINTYPE  pt,
uint32_t  gid 
)

◆ GWEN_Crypt_Token_EndEnterPin()

GWENHYWFAR_API int GWEN_Crypt_Token_EndEnterPin ( GWEN_CRYPT_TOKEN ct,
GWEN_CRYPT_PINTYPE  pt,
int  ok,
uint32_t  id 
)

◆ GWEN_Crypt_Token_GetPin()

GWENHYWFAR_API int GWEN_Crypt_Token_GetPin ( GWEN_CRYPT_TOKEN ct,
GWEN_CRYPT_PINTYPE  pt,
GWEN_CRYPT_PINENCODING  pe,
uint32_t  flags,
unsigned char *  pwbuffer,
unsigned int  minLength,
unsigned int  maxLength,
unsigned int *  pinLength,
uint32_t  gid 
)

◆ GWEN_Crypt_Token_InsertCorrectToken()

GWENHYWFAR_API int GWEN_Crypt_Token_InsertCorrectToken ( GWEN_CRYPT_TOKEN ct,
uint32_t  gid 
)

◆ GWEN_Crypt_Token_InsertToken()

GWENHYWFAR_API int GWEN_Crypt_Token_InsertToken ( GWEN_CRYPT_TOKEN ct,
uint32_t  gid 
)

◆ GWEN_Crypt_Token_new()

GWENHYWFAR_API GWEN_CRYPT_TOKEN* GWEN_Crypt_Token_new ( GWEN_CRYPT_TOKEN_DEVICE  dev,
const char *  typeName,
const char *  tokenName 
)

◆ GWEN_Crypt_Token_SetActivateKeyFn()

GWEN_CRYPT_TOKEN_ACTIVATEKEY_FN GWEN_Crypt_Token_SetActivateKeyFn ( GWEN_CRYPT_TOKEN ct,
GWEN_CRYPT_TOKEN_ACTIVATEKEY_FN  f 
)

◆ GWEN_Crypt_Token_SetChangePinFn()

◆ GWEN_Crypt_Token_SetCloseFn()

◆ GWEN_Crypt_Token_SetCreateFn()

◆ GWEN_Crypt_Token_SetDecipherFn()

◆ GWEN_Crypt_Token_SetEncipherFn()

◆ GWEN_Crypt_Token_SetFlags()

GWENHYWFAR_API void GWEN_Crypt_Token_SetFlags ( GWEN_CRYPT_TOKEN ct,
uint32_t  f 
)

◆ GWEN_Crypt_Token_SetGenerateKeyFn()

◆ GWEN_Crypt_Token_SetGetContextFn()

◆ GWEN_Crypt_Token_SetGetContextIdListFn()

◆ GWEN_Crypt_Token_SetGetKeyIdListFn()

◆ GWEN_Crypt_Token_SetGetKeyInfoFn()

◆ GWEN_Crypt_Token_SetOpenFn()

◆ GWEN_Crypt_Token_SetPinStatus()

GWENHYWFAR_API int GWEN_Crypt_Token_SetPinStatus ( GWEN_CRYPT_TOKEN ct,
GWEN_CRYPT_PINTYPE  pt,
GWEN_CRYPT_PINENCODING  pe,
uint32_t  flags,
const unsigned char *  buffer,
unsigned int  pinLength,
int  isOk,
uint32_t  gid 
)

◆ GWEN_Crypt_Token_SetSetContextFn()

◆ GWEN_Crypt_Token_SetSetKeyInfoFn()

◆ GWEN_Crypt_Token_SetSignFn()

◆ GWEN_Crypt_Token_SetTokenName()

GWENHYWFAR_API void GWEN_Crypt_Token_SetTokenName ( GWEN_CRYPT_TOKEN ct,
const char *  s 
)

◆ GWEN_Crypt_Token_SetVerifyFn()

◆ GWEN_Crypt_Token_SubFlags()

GWENHYWFAR_API void GWEN_Crypt_Token_SubFlags ( GWEN_CRYPT_TOKEN ct,
uint32_t  f 
)