cryptmgr.h
Go to the documentation of this file.
/***************************************************************************
begin : Mon Dec 01 2008
copyright : (C) 2008 by Martin Preuss
email : martin@libchipcard.de
***************************************************************************
* Please see toplevel file COPYING for license details *
***************************************************************************/
#ifndef GWEN_CRYPTMGR_CRYPTMGR_H
#define GWEN_CRYPTMGR_CRYPTMGR_H
#include <gwenhywfar/buffer.h>
#define GWEN_CRYPTMGR_TLV_SIGNEDOBJECT 0x21
#define GWEN_CRYPTMGR_TLV_ENCRYPTEDOBJECT 0x22
typedef struct GWEN_CRYPTMGR GWEN_CRYPTMGR;
typedef enum {
GWEN_CryptProfile_None=0,
GWEN_CryptProfile_1=1
} GWEN_CRYPT_PROFILE;
typedef enum {
GWEN_SignatureProfile_None=0,
GWEN_SignatureProfile_1=1
} GWEN_SIGNATURE_PROFILE;
#ifdef __cplusplus
extern "C" {
#endif
GWENHYWFAR_API
void GWEN_CryptMgr_free(GWEN_CRYPTMGR *cm);
GWENHYWFAR_API
const char *GWEN_CryptMgr_GetLocalKeyName(const GWEN_CRYPTMGR *cm);
GWENHYWFAR_API
int GWEN_CryptMgr_GetLocalKeyNumber(const GWEN_CRYPTMGR *cm);
GWENHYWFAR_API
int GWEN_CryptMgr_GetLocalKeyVersion(const GWEN_CRYPTMGR *cm);
GWENHYWFAR_API
const char *GWEN_CryptMgr_GetPeerKeyName(const GWEN_CRYPTMGR *cm);
GWENHYWFAR_API
int GWEN_CryptMgr_GetPeerKeyNumber(const GWEN_CRYPTMGR *cm);
GWENHYWFAR_API
int GWEN_CryptMgr_GetPeerKeyVersion(const GWEN_CRYPTMGR *cm);
GWENHYWFAR_API
int GWEN_CryptMgr_GetCryptProfile(const GWEN_CRYPTMGR *cm);
GWENHYWFAR_API
void GWEN_CryptMgr_SetCryptProfile(GWEN_CRYPTMGR *cm, int i);
GWENHYWFAR_API
int GWEN_CryptMgr_GetSignatureProfile(const GWEN_CRYPTMGR *cm);
GWENHYWFAR_API
void GWEN_CryptMgr_SetSignatureProfile(GWEN_CRYPTMGR *cm, int i);
GWENHYWFAR_API
int GWEN_CryptMgr_Sign(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf);
GWENHYWFAR_API
int GWEN_CryptMgr_Encrypt(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf);
GWENHYWFAR_API
int GWEN_CryptMgr_Verify(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf);
GWENHYWFAR_API
int GWEN_CryptMgr_Decrypt(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf);
GWENHYWFAR_API
int GWEN_CryptMgr_Encode(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf);
GWENHYWFAR_API
int GWEN_CryptMgr_Decode(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf);
#ifdef __cplusplus
}
#endif
/* defgroup */
#endif
buffer.h
GWEN_CryptMgr_GetSignatureProfile
GWENHYWFAR_API int GWEN_CryptMgr_GetSignatureProfile(const GWEN_CRYPTMGR *cm)
GWEN_CryptMgr_Verify
GWENHYWFAR_API int GWEN_CryptMgr_Verify(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf)
GWEN_CryptMgr_SetSignatureProfile
GWENHYWFAR_API void GWEN_CryptMgr_SetSignatureProfile(GWEN_CRYPTMGR *cm, int i)
GWEN_CryptMgr_GetCryptProfile
GWENHYWFAR_API int GWEN_CryptMgr_GetCryptProfile(const GWEN_CRYPTMGR *cm)
GWEN_CryptMgr_GetPeerKeyVersion
GWENHYWFAR_API int GWEN_CryptMgr_GetPeerKeyVersion(const GWEN_CRYPTMGR *cm)
GWEN_CryptMgr_GetPeerKeyNumber
GWENHYWFAR_API int GWEN_CryptMgr_GetPeerKeyNumber(const GWEN_CRYPTMGR *cm)
GWEN_CRYPTMGR
struct GWEN_CRYPTMGR GWEN_CRYPTMGR
Definition cryptmgr.h:64
GWEN_CryptMgr_free
GWENHYWFAR_API void GWEN_CryptMgr_free(GWEN_CRYPTMGR *cm)
GWEN_CryptMgr_SetCryptProfile
GWENHYWFAR_API void GWEN_CryptMgr_SetCryptProfile(GWEN_CRYPTMGR *cm, int i)
GWEN_CryptMgr_Encrypt
GWENHYWFAR_API int GWEN_CryptMgr_Encrypt(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf)
GWEN_CryptMgr_Sign
GWENHYWFAR_API int GWEN_CryptMgr_Sign(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf)
GWEN_CryptMgr_GetLocalKeyVersion
GWENHYWFAR_API int GWEN_CryptMgr_GetLocalKeyVersion(const GWEN_CRYPTMGR *cm)
GWEN_CRYPT_PROFILE
GWEN_CRYPT_PROFILE
Definition cryptmgr.h:67
GWEN_CryptProfile_1
@ GWEN_CryptProfile_1
Definition cryptmgr.h:75
GWEN_CryptProfile_None
@ GWEN_CryptProfile_None
Definition cryptmgr.h:68
GWEN_CryptMgr_GetLocalKeyNumber
GWENHYWFAR_API int GWEN_CryptMgr_GetLocalKeyNumber(const GWEN_CRYPTMGR *cm)
GWEN_CryptMgr_Decode
GWENHYWFAR_API int GWEN_CryptMgr_Decode(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf)
GWEN_CryptMgr_GetLocalKeyName
GWENHYWFAR_API const char * GWEN_CryptMgr_GetLocalKeyName(const GWEN_CRYPTMGR *cm)
GWEN_CryptMgr_Encode
GWENHYWFAR_API int GWEN_CryptMgr_Encode(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf)
GWEN_SIGNATURE_PROFILE
GWEN_SIGNATURE_PROFILE
Definition cryptmgr.h:79
GWEN_SignatureProfile_None
@ GWEN_SignatureProfile_None
Definition cryptmgr.h:80
GWEN_SignatureProfile_1
@ GWEN_SignatureProfile_1
Definition cryptmgr.h:86
GWEN_CryptMgr_GetPeerKeyName
GWENHYWFAR_API const char * GWEN_CryptMgr_GetPeerKeyName(const GWEN_CRYPTMGR *cm)
GWEN_CryptMgr_Decrypt
GWENHYWFAR_API int GWEN_CryptMgr_Decrypt(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf)
GWEN_BUFFER
struct GWEN_BUFFER GWEN_BUFFER
A dynamically resizeable text buffer.
Definition buffer.h:38
GWENHYWFAR_API
#define GWENHYWFAR_API
Definition gwenhywfarapi.h:67