gwenhywfar 4.0.3
|
#include <gwenhywfar/list1.h>
#include <gwenhywfar/list2.h>
#include <gwenhywfar/hashalgo.h>
#include <gwenhywfar/stringlist.h>
Go to the source code of this file.
Typedefs | |
typedef struct GWEN_MDIGEST | GWEN_MDIGEST |
Functions | |
GWENHYWFAR_API int | GWEN_MDigest_Begin (GWEN_MDIGEST *md) |
GWENHYWFAR_API int | GWEN_MDigest_CheckFileTree (GWEN_MDIGEST *md, const char *folder, const char *checksumFile, int strictCheck, uint32_t pid) |
GWENHYWFAR_API int | GWEN_MDigest_End (GWEN_MDIGEST *md) |
GWENHYWFAR_API void | GWEN_MDigest_free (GWEN_MDIGEST *md) |
GWENHYWFAR_API uint8_t * | GWEN_MDigest_GetDigestPtr (GWEN_MDIGEST *md) |
GWENHYWFAR_API unsigned int | GWEN_MDigest_GetDigestSize (GWEN_MDIGEST *md) |
GWENHYWFAR_API GWEN_CRYPT_HASHALGOID | GWEN_MDigest_GetHashAlgoId (const GWEN_MDIGEST *md) |
GWENHYWFAR_API int | GWEN_MDigest_HashFileTree (GWEN_MDIGEST *md, const char *folder, const char *ignoreFile, GWEN_STRINGLIST *sl) |
GWENHYWFAR_API GWEN_MDIGEST * | GWEN_MDigest_Md5_new () |
GWENHYWFAR_API int | GWEN_MDigest_PBKDF2 (GWEN_MDIGEST *md, const char *password, const uint8_t *pSalt, uint32_t lSalt, uint8_t *pKey, uint32_t lKey, uint32_t iterations) |
GWENHYWFAR_API GWEN_MDIGEST * | GWEN_MDigest_Rmd160_new () |
GWENHYWFAR_API GWEN_MDIGEST * | GWEN_MDigest_Sha1_new () |
GWENHYWFAR_API GWEN_MDIGEST * | GWEN_MDigest_Sha256_new () |
GWENHYWFAR_API int | GWEN_MDigest_Update (GWEN_MDIGEST *md, const uint8_t *buf, unsigned int l) |
typedef struct GWEN_MDIGEST GWEN_MDIGEST |
GWENHYWFAR_API int GWEN_MDigest_Begin | ( | GWEN_MDIGEST * | md | ) |
Definition at line 120 of file mdigest.c.
References GWEN_ERROR_NOT_IMPLEMENTED.
Referenced by GWEN_Crypt__KeyDataFromText(), GWEN_CryptMgrKeys_SignData(), GWEN_CryptMgrKeys_VerifyData(), GWEN_Gui_CGui__HashPair(), GWEN_MDigest__HashFile(), GWEN_MDigest_PBKDF2(), GWEN_Padd_AddPkcs1Pss(), GWEN_Padd_MGF1(), and GWEN_Padd_VerifyPkcs1Pss().
GWENHYWFAR_API int GWEN_MDigest_CheckFileTree | ( | GWEN_MDIGEST * | md, |
const char * | folder, | ||
const char * | checksumFile, | ||
int | strictCheck, | ||
uint32_t | pid | ||
) |
This function verifies the integrity of a given file hierarchy by comparing checksums saved in a given file inside that file tree to the actual checksums of the files in the file tree.
md | digest algorithm to use (see GWEN_MDigest_Rmd160_new et al) |
folder | folder to check |
checkSumFile | name of the file containing the checksums |
strictCheck | if !=0 then an error will be returned if there are files in the tree for which there is no corresponding entry in the checksum file |
pid | id of the open progress dialog (see GWEN_Gui_ProgressStart) |
Definition at line 464 of file mdigest.c.
References DBG_ERROR, GWEN_Buffer_AppendString(), GWEN_Buffer_free(), GWEN_Buffer_GetStart(), GWEN_Buffer_new(), GWEN_DIR_SEPARATOR_S, GWEN_ERROR_VERIFY, GWEN_Gui_ProgressLog2(), GWEN_LoggerLevel_Error, GWEN_LoggerLevel_Warning, GWEN_MDigest_HashFileTree(), GWEN_StringList_Count(), GWEN_StringList_FirstEntry(), GWEN_StringList_free(), GWEN_StringList_new(), GWEN_StringList_RemoveString(), GWEN_StringListEntry_Data(), GWEN_StringListEntry_Next(), GWEN_SyncIo_Helper_ReadFileToStringList(), and I18N.
GWENHYWFAR_API int GWEN_MDigest_End | ( | GWEN_MDIGEST * | md | ) |
Definition at line 131 of file mdigest.c.
References GWEN_ERROR_NOT_IMPLEMENTED.
Referenced by GWEN_Crypt__KeyDataFromText(), GWEN_CryptMgrKeys_SignData(), GWEN_CryptMgrKeys_VerifyData(), GWEN_Gui_CGui__HashPair(), GWEN_MDigest__HashFile(), GWEN_MDigest_PBKDF2(), GWEN_Padd_AddPkcs1Pss(), GWEN_Padd_MGF1(), and GWEN_Padd_VerifyPkcs1Pss().
GWENHYWFAR_API void GWEN_MDigest_free | ( | GWEN_MDIGEST * | md | ) |
Definition at line 53 of file mdigest.c.
References GWEN_FREE_OBJECT.
Referenced by GWEN_Crypt__KeyDataFromText(), GWEN_Crypt_TokenFile__Sign(), GWEN_Crypt_TokenFile__Verify(), GWEN_CryptMgrKeys_SignData(), GWEN_CryptMgrKeys_VerifyData(), GWEN_Gui_CGui__HashPair(), GWEN_SmallTresor_Decrypt(), and GWEN_SmallTresor_Encrypt().
GWENHYWFAR_API uint8_t* GWEN_MDigest_GetDigestPtr | ( | GWEN_MDIGEST * | md | ) |
Definition at line 76 of file mdigest.c.
Referenced by GWEN_Crypt__KeyDataFromText(), GWEN_CryptMgrKeys_SignData(), GWEN_CryptMgrKeys_VerifyData(), GWEN_Gui_CGui__HashPair(), GWEN_MDigest__HashFile(), GWEN_MDigest_PBKDF2(), GWEN_Padd_AddPkcs1Pss(), GWEN_Padd_MGF1(), and GWEN_Padd_VerifyPkcs1Pss().
GWENHYWFAR_API unsigned int GWEN_MDigest_GetDigestSize | ( | GWEN_MDIGEST * | md | ) |
Definition at line 84 of file mdigest.c.
Referenced by GWEN_CryptMgrKeys_SignData(), GWEN_CryptMgrKeys_VerifyData(), GWEN_Gui_CGui__HashPair(), GWEN_MDigest__HashFile(), GWEN_MDigest_PBKDF2(), GWEN_Padd_AddPkcs1Pss(), GWEN_Padd_MGF1(), and GWEN_Padd_VerifyPkcs1Pss().
GWENHYWFAR_API GWEN_CRYPT_HASHALGOID GWEN_MDigest_GetHashAlgoId | ( | const GWEN_MDIGEST * | md | ) |
GWENHYWFAR_API int GWEN_MDigest_HashFileTree | ( | GWEN_MDIGEST * | md, |
const char * | folder, | ||
const char * | ignoreFile, | ||
GWEN_STRINGLIST * | sl | ||
) |
Definition at line 447 of file mdigest.c.
References DBG_INFO, GWEN_LOGDOMAIN, GWEN_MDigest__HashFileTree(), and NULL.
Referenced by GWEN_MDigest_CheckFileTree().
GWENHYWFAR_API GWEN_MDIGEST* GWEN_MDigest_Md5_new | ( | ) |
Definition at line 135 of file mdigestgc.c.
References GWEN_INHERIT_GETDATA, GWEN_MDigest_Gc_new(), and GWEN_MDigest_SetDigestLen().
Referenced by GWEN_Crypt__KeyDataFromText(), and GWEN_Gui_CGui__HashPair().
GWENHYWFAR_API int GWEN_MDigest_PBKDF2 | ( | GWEN_MDIGEST * | md, |
const char * | password, | ||
const uint8_t * | pSalt, | ||
uint32_t | lSalt, | ||
uint8_t * | pKey, | ||
uint32_t | lKey, | ||
uint32_t | iterations | ||
) |
Generate a key from a given password and a salt according to RFC 2898.
Definition at line 192 of file mdigest.c.
References DBG_ERROR, DBG_INFO, GWEN_ERROR_INVALID, GWEN_LOGDOMAIN, GWEN_MDigest_Begin(), GWEN_MDigest_End(), GWEN_MDigest_GetDigestPtr(), GWEN_MDigest_GetDigestSize(), and GWEN_MDigest_Update().
Referenced by GWEN_SmallTresor_Decrypt(), and GWEN_SmallTresor_Encrypt().
GWENHYWFAR_API GWEN_MDIGEST* GWEN_MDigest_Rmd160_new | ( | ) |
Definition at line 152 of file mdigestgc.c.
References GWEN_INHERIT_GETDATA, GWEN_MDigest_Gc_new(), and GWEN_MDigest_SetDigestLen().
Referenced by GWEN_Crypt__KeyDataFromText(), GWEN_CryptMgrKeys_SignData(), and GWEN_CryptMgrKeys_VerifyData().
GWENHYWFAR_API GWEN_MDIGEST* GWEN_MDigest_Sha1_new | ( | ) |
Definition at line 169 of file mdigestgc.c.
References GWEN_INHERIT_GETDATA, GWEN_MDigest_Gc_new(), and GWEN_MDigest_SetDigestLen().
GWENHYWFAR_API GWEN_MDIGEST* GWEN_MDigest_Sha256_new | ( | ) |
Definition at line 186 of file mdigestgc.c.
References GWEN_INHERIT_GETDATA, GWEN_MDigest_Gc_new(), and GWEN_MDigest_SetDigestLen().
Referenced by GWEN_Crypt_TokenFile__Sign(), GWEN_Crypt_TokenFile__Verify(), GWEN_SmallTresor_Decrypt(), and GWEN_SmallTresor_Encrypt().
GWENHYWFAR_API int GWEN_MDigest_Update | ( | GWEN_MDIGEST * | md, |
const uint8_t * | buf, | ||
unsigned int | l | ||
) |
Definition at line 142 of file mdigest.c.
References GWEN_ERROR_NOT_IMPLEMENTED.
Referenced by GWEN_Crypt__KeyDataFromText(), GWEN_CryptMgrKeys_SignData(), GWEN_CryptMgrKeys_VerifyData(), GWEN_Gui_CGui__HashPair(), GWEN_MDigest__HashFile(), GWEN_MDigest_PBKDF2(), GWEN_Padd_AddPkcs1Pss(), GWEN_Padd_MGF1(), and GWEN_Padd_VerifyPkcs1Pss().