Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014 #ifndef GWEN_CRYPT_CRYPTDEFS_H
00015 #define GWEN_CRYPT_CRYPTDEFS_H
00016
00017
00018 #include <gwenhywfar/gwenhywfarapi.h>
00019
00020
00021 #ifdef __cplusplus
00022 extern "C" {
00023 #endif
00024
00025
00026 typedef enum {
00027 GWEN_Crypt_PinType_Unknown=-1,
00028 GWEN_Crypt_PinType_None=0,
00029 GWEN_Crypt_PinType_Access,
00030 GWEN_Crypt_PinType_Manage
00031 } GWEN_CRYPT_PINTYPE;
00032
00033 GWENHYWFAR_API GWEN_CRYPT_PINTYPE GWEN_Crypt_PinType_fromString(const char *s);
00034 GWENHYWFAR_API const char *GWEN_Crypt_PinType_toString(GWEN_CRYPT_PINTYPE pt);
00035
00036
00037
00038 typedef enum {
00039 GWEN_Crypt_PinEncoding_Unknown=-1,
00040 GWEN_Crypt_PinEncoding_None=0,
00041 GWEN_Crypt_PinEncoding_Bin,
00042 GWEN_Crypt_PinEncoding_Bcd,
00043 GWEN_Crypt_PinEncoding_Ascii,
00044 GWEN_Crypt_PinEncoding_FPin2
00045 } GWEN_CRYPT_PINENCODING;
00046
00047 GWENHYWFAR_API GWEN_CRYPT_PINENCODING GWEN_Crypt_PinEncoding_fromString(const char *s);
00048 GWENHYWFAR_API const char *GWEN_Crypt_PinEncoding_toString(GWEN_CRYPT_PINENCODING pe);
00049
00050
00051 GWENHYWFAR_API int GWEN_Crypt_TransformPin(GWEN_CRYPT_PINENCODING peSrc,
00052 GWEN_CRYPT_PINENCODING peDst,
00053 unsigned char *buffer,
00054 unsigned int bufLength,
00055 unsigned int *pinLength);
00056
00057 GWENHYWFAR_API int GWEN_Crypt_KeyDataFromText(const char *text,
00058 unsigned char *buffer,
00059 unsigned int bufLength);
00060
00061 GWENHYWFAR_API void GWEN_Crypt_Random(int quality, uint8_t *buffer, uint32_t len);
00062
00063
00064 #ifdef __cplusplus
00065 }
00066 #endif
00067
00068
00069 #endif
00070