gwenhywfar  5.1.3
cryptmgr.h
Go to the documentation of this file.
1 /***************************************************************************
2  begin : Mon Dec 01 2008
3  copyright : (C) 2008 by Martin Preuss
4  email : martin@libchipcard.de
5 
6  ***************************************************************************
7  * Please see toplevel file COPYING for license details *
8  ***************************************************************************/
9 
10 
11 #ifndef GWEN_CRYPTMGR_CRYPTMGR_H
12 #define GWEN_CRYPTMGR_CRYPTMGR_H
13 
14 
15 #include <gwenhywfar/buffer.h>
16 
59 
60 #define GWEN_CRYPTMGR_TLV_SIGNEDOBJECT 0x21
61 #define GWEN_CRYPTMGR_TLV_ENCRYPTEDOBJECT 0x22
62 
63 
65 
66 
67 typedef enum {
77 
78 
79 typedef enum {
88 
89 
90 #ifdef __cplusplus
91 extern "C" {
92 #endif
93 
94 
97 
103 const char *GWEN_CryptMgr_GetLocalKeyName(const GWEN_CRYPTMGR *cm);
104 
107 
118 const char *GWEN_CryptMgr_GetPeerKeyName(const GWEN_CRYPTMGR *cm);
119 
122 
134 
137 
140 
150 
155 int GWEN_CryptMgr_Sign(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf);
156 
161 int GWEN_CryptMgr_Encrypt(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf);
162 
167 int GWEN_CryptMgr_Verify(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf);
168 
173 int GWEN_CryptMgr_Decrypt(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf);
183 
189 int GWEN_CryptMgr_Encode(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf);
190 
196 int GWEN_CryptMgr_Decode(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf);
200 #ifdef __cplusplus
201 }
202 #endif
203  /* defgroup */
205 
206 
207 #endif
208 
209 
GWEN_CryptMgr_GetLocalKeyNumber
GWENHYWFAR_API int GWEN_CryptMgr_GetLocalKeyNumber(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_CryptMgr_Decode
GWENHYWFAR_API int GWEN_CryptMgr_Decode(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf)
GWEN_CryptMgr_GetLocalKeyName
const GWENHYWFAR_API char * GWEN_CryptMgr_GetLocalKeyName(const GWEN_CRYPTMGR *cm)
GWEN_CryptMgr_SetCryptProfile
GWENHYWFAR_API void GWEN_CryptMgr_SetCryptProfile(GWEN_CRYPTMGR *cm, int i)
GWEN_CryptMgr_Encode
GWENHYWFAR_API int GWEN_CryptMgr_Encode(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf)
GWEN_CryptMgr_GetPeerKeyName
const GWENHYWFAR_API char * GWEN_CryptMgr_GetPeerKeyName(const GWEN_CRYPTMGR *cm)
GWEN_CRYPTMGR
struct GWEN_CRYPTMGR GWEN_CRYPTMGR
Definition: cryptmgr.h:64
GWEN_CryptProfile_1
@ GWEN_CryptProfile_1
Definition: cryptmgr.h:75
GWEN_CryptMgr_free
GWENHYWFAR_API void GWEN_CryptMgr_free(GWEN_CRYPTMGR *cm)
GWEN_CryptMgr_GetSignatureProfile
GWENHYWFAR_API int GWEN_CryptMgr_GetSignatureProfile(const GWEN_CRYPTMGR *cm)
GWEN_CryptMgr_GetPeerKeyNumber
GWENHYWFAR_API int GWEN_CryptMgr_GetPeerKeyNumber(const GWEN_CRYPTMGR *cm)
GWEN_CryptProfile_None
@ GWEN_CryptProfile_None
Definition: cryptmgr.h:68
GWEN_CryptMgr_GetPeerKeyVersion
GWENHYWFAR_API int GWEN_CryptMgr_GetPeerKeyVersion(const GWEN_CRYPTMGR *cm)
GWEN_SignatureProfile_None
@ GWEN_SignatureProfile_None
Definition: cryptmgr.h:80
GWEN_SIGNATURE_PROFILE
GWEN_SIGNATURE_PROFILE
Definition: cryptmgr.h:79
GWEN_CryptMgr_GetCryptProfile
GWENHYWFAR_API int GWEN_CryptMgr_GetCryptProfile(const GWEN_CRYPTMGR *cm)
GWEN_CryptMgr_SetSignatureProfile
GWENHYWFAR_API void GWEN_CryptMgr_SetSignatureProfile(GWEN_CRYPTMGR *cm, int i)
buffer.h
GWEN_CryptMgr_GetLocalKeyVersion
GWENHYWFAR_API int GWEN_CryptMgr_GetLocalKeyVersion(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_Encrypt
GWENHYWFAR_API int GWEN_CryptMgr_Encrypt(GWEN_CRYPTMGR *cm, const uint8_t *pData, uint32_t lData, GWEN_BUFFER *dbuf)
GWEN_SignatureProfile_1
@ GWEN_SignatureProfile_1
Definition: cryptmgr.h:86
GWEN_CRYPT_PROFILE
GWEN_CRYPT_PROFILE
Definition: cryptmgr.h:67
GWENHYWFAR_API
#define GWENHYWFAR_API
Definition: gwenhywfarapi.h:67
GWEN_CryptMgr_Sign
GWENHYWFAR_API int GWEN_CryptMgr_Sign(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