gwenhywfar
4.8.0beta
|
#include "passwdstore_p.h"
#include "i18n_l.h"
#include <gwenhywfar/gui.h>
#include <gwenhywfar/db.h>
#include <gwenhywfar/directory.h>
#include <gwenhywfar/fslock.h>
#include <gwenhywfar/mdigest.h>
#include <gwenhywfar/text.h>
#include <gwenhywfar/debug.h>
#include <gwenhywfar/smalltresor.h>
#include <errno.h>
Go to the source code of this file.
Functions | |
static int | GWEN_PasswordStore__GetPassword (GWEN_PASSWD_STORE *sto, const char *token, char *buffer, int minLen, int maxLen) |
static int | GWEN_PasswordStore__SetPassword (GWEN_PASSWD_STORE *sto, const char *token, const char *secret) |
static int | GWEN_PasswordStore_CheckDigest (const uint8_t *t, uint32_t size, const uint8_t *h) |
void | GWEN_PasswordStore_ClearStoragePasswd (GWEN_PASSWD_STORE *sto) |
static int | GWEN_PasswordStore_Digest (const uint8_t *t, uint32_t size, GWEN_BUFFER *buf) |
static int | GWEN_PasswordStore_EncryptWriteFile (GWEN_PASSWD_STORE *sto, const uint8_t *sec, uint32_t len) |
void | GWEN_PasswordStore_free (GWEN_PASSWD_STORE *sto) |
int | GWEN_PasswordStore_GetPassword (GWEN_PASSWD_STORE *sto, const char *token, char *buffer, int minLen, int maxLen) |
GWEN_PASSWD_STORE * | GWEN_PasswordStore_new (const char *fname) |
static int | GWEN_PasswordStore_ReadDecryptFile (GWEN_PASSWD_STORE *sto, GWEN_BUFFER *secbuf) |
static int | GWEN_PasswordStore_ReadFile (GWEN_PASSWD_STORE *sto) |
static void | GWEN_PasswordStore_SafeFreeDb (GWEN_PASSWD_STORE *sto) |
int | GWEN_PasswordStore_SetPassword (GWEN_PASSWD_STORE *sto, const char *token, const char *secret) |
static int | GWEN_PasswordStore_WriteFile (GWEN_PASSWD_STORE *sto) |
static int | readFile (const char *fname, GWEN_BUFFER *dbuf) |
static int | writeFile (const char *fname, const char *p, int len) |
static int | writeToFile (FILE *f, const char *p, int len) |
|
static |
Definition at line 575 of file passwdstore.c.
References DBG_ERROR, GWEN_Buffer_free(), GWEN_Buffer_GetStart(), GWEN_Buffer_new(), GWEN_DB_GetCharValue(), GWEN_ERROR_NOT_FOUND, GWEN_LOGDOMAIN, GWEN_Text_EscapeToBufferTolerant(), and NULL.
Referenced by GWEN_PasswordStore_GetPassword().
|
static |
Definition at line 556 of file passwdstore.c.
References GWEN_Buffer_free(), GWEN_Buffer_GetStart(), GWEN_Buffer_new(), GWEN_DB_DeleteVar(), GWEN_DB_FLAGS_OVERWRITE_VARS, GWEN_DB_ModifyBranchFlagsDown(), GWEN_DB_NODE_FLAGS_SAFE, GWEN_DB_SetCharValue(), GWEN_Text_EscapeToBufferTolerant(), and NULL.
Referenced by GWEN_PasswordStore_SetPassword().
|
static |
Definition at line 213 of file passwdstore.c.
References DBG_ERROR, GWEN_ERROR_BAD_DATA, GWEN_LOGDOMAIN, GWEN_MDigest_Begin(), GWEN_MDigest_End(), GWEN_MDigest_free(), GWEN_MDigest_GetDigestPtr(), GWEN_MDigest_Rmd160_new(), and GWEN_MDigest_Update().
Referenced by GWEN_PasswordStore_ReadDecryptFile().
void GWEN_PasswordStore_ClearStoragePasswd | ( | GWEN_PASSWD_STORE * | sto | ) |
Definition at line 74 of file passwdstore.c.
References GWEN_DB_Group_free(), GWEN_DB_ModifyBranchFlagsDown(), GWEN_DB_NODE_FLAGS_SAFE, and NULL.
Referenced by GWEN_Gui_Internal_SetPasswordStatus().
|
static |
Definition at line 187 of file passwdstore.c.
References DBG_ERROR, GWEN_Buffer_AppendBytes(), GWEN_LOGDOMAIN, GWEN_MDigest_Begin(), GWEN_MDigest_End(), GWEN_MDigest_free(), GWEN_MDigest_GetDigestPtr(), GWEN_MDigest_GetDigestSize(), GWEN_MDigest_Rmd160_new(), and GWEN_MDigest_Update().
Referenced by GWEN_PasswordStore_EncryptWriteFile().
|
static |
Definition at line 353 of file passwdstore.c.
References DBG_ERROR, DBG_INFO, GWEN_Buffer_AppendBytes(), GWEN_Buffer_AppendString(), GWEN_Buffer_free(), GWEN_Buffer_GetStart(), GWEN_Buffer_GetUsedBytes(), GWEN_Buffer_new(), GWEN_Buffer_OverwriteContent(), GWEN_Directory_GetPath(), GWEN_GUI_INPUT_FLAGS_CONFIRM, GWEN_GUI_INPUT_FLAGS_DIRECT, GWEN_Gui_InputBox(), GWEN_LOGDOMAIN, GWEN_PasswordStore_Digest(), GWEN_PATH_FLAGS_VARIABLE, GWEN_SmallTresor_Encrypt(), GWEN_Text_UnescapeToBufferTolerant(), I18N, and writeFile().
Referenced by GWEN_PasswordStore_WriteFile().
void GWEN_PasswordStore_free | ( | GWEN_PASSWD_STORE * | sto | ) |
Definition at line 59 of file passwdstore.c.
References GWEN_DB_Group_free(), GWEN_DB_ModifyBranchFlagsDown(), GWEN_DB_NODE_FLAGS_SAFE, GWEN_FREE_OBJECT, and NULL.
Referenced by GWEN_Gui_free(), and GWEN_Gui_SetPasswdStore().
int GWEN_PasswordStore_GetPassword | ( | GWEN_PASSWD_STORE * | sto, |
const char * | token, | ||
char * | buffer, | ||
int | minLen, | ||
int | maxLen | ||
) |
Definition at line 678 of file passwdstore.c.
References DBG_INFO, GWEN_Directory_GetPath(), GWEN_ERROR_IO, GWEN_FSLock_free(), GWEN_FSLock_Lock(), GWEN_FSLock_new(), GWEN_FSLock_ResultOk, GWEN_FSLock_TypeFile, GWEN_FSLock_Unlock(), GWEN_LOGDOMAIN, GWEN_PasswordStore__GetPassword(), GWEN_PasswordStore_ReadFile(), GWEN_PasswordStore_SafeFreeDb(), and GWEN_PATH_FLAGS_VARIABLE.
Referenced by GWEN_Gui_Internal_GetPassword().
GWEN_PASSWD_STORE* GWEN_PasswordStore_new | ( | const char * | fname | ) |
Definition at line 46 of file passwdstore.c.
References GWEN_NEW_OBJECT, and NULL.
Referenced by test10().
|
static |
Definition at line 252 of file passwdstore.c.
References DBG_ERROR, DBG_INFO, GWEN_Buffer_AppendString(), GWEN_Buffer_Crop(), GWEN_Buffer_free(), GWEN_Buffer_GetPos(), GWEN_Buffer_GetStart(), GWEN_Buffer_GetUsedBytes(), GWEN_Buffer_new(), GWEN_ERROR_NO_DATA, GWEN_GUI_INPUT_FLAGS_DIRECT, GWEN_Gui_InputBox(), GWEN_LOGDOMAIN, GWEN_PasswordStore_CheckDigest(), GWEN_SmallTresor_Decrypt(), GWEN_Text_UnescapeToBufferTolerant(), I18N, and readFile().
Referenced by GWEN_PasswordStore_ReadFile().
|
static |
Definition at line 483 of file passwdstore.c.
References DBG_INFO, GWEN_Buffer_free(), GWEN_Buffer_GetStart(), GWEN_Buffer_GetUsedBytes(), GWEN_Buffer_new(), GWEN_Buffer_OverwriteContent(), GWEN_DB_FLAGS_DEFAULT, GWEN_DB_Group_new(), GWEN_DB_ModifyBranchFlagsDown(), GWEN_DB_NODE_FLAGS_SAFE, GWEN_DB_ReadFromString(), GWEN_LOGDOMAIN, GWEN_PasswordStore_ReadDecryptFile(), and GWEN_PasswordStore_SafeFreeDb().
Referenced by GWEN_PasswordStore_GetPassword(), and GWEN_PasswordStore_SetPassword().
|
static |
Definition at line 242 of file passwdstore.c.
References GWEN_DB_Group_free(), GWEN_DB_ModifyBranchFlagsDown(), GWEN_DB_NODE_FLAGS_SAFE, and NULL.
Referenced by GWEN_PasswordStore_GetPassword(), GWEN_PasswordStore_ReadFile(), and GWEN_PasswordStore_SetPassword().
int GWEN_PasswordStore_SetPassword | ( | GWEN_PASSWD_STORE * | sto, |
const char * | token, | ||
const char * | secret | ||
) |
Definition at line 608 of file passwdstore.c.
References DBG_INFO, GWEN_DB_Group_new(), GWEN_DB_ModifyBranchFlagsDown(), GWEN_DB_NODE_FLAGS_SAFE, GWEN_Directory_GetPath(), GWEN_ERROR_IO, GWEN_ERROR_NO_DATA, GWEN_ERROR_NOT_FOUND, GWEN_FSLock_free(), GWEN_FSLock_Lock(), GWEN_FSLock_new(), GWEN_FSLock_ResultOk, GWEN_FSLock_TypeFile, GWEN_FSLock_Unlock(), GWEN_LOGDOMAIN, GWEN_PasswordStore__SetPassword(), GWEN_PasswordStore_ReadFile(), GWEN_PasswordStore_SafeFreeDb(), GWEN_PasswordStore_WriteFile(), GWEN_PATH_FLAGS_VARIABLE, and NULL.
Referenced by GWEN_Gui_Internal_GetPassword(), and GWEN_Gui_Internal_SetPasswordStatus().
|
static |
Definition at line 519 of file passwdstore.c.
References DBG_INFO, GWEN_Buffer_free(), GWEN_Buffer_GetStart(), GWEN_Buffer_GetUsedBytes(), GWEN_Buffer_new(), GWEN_Buffer_OverwriteContent(), GWEN_DB_FLAGS_DEFAULT, GWEN_DB_WriteToBuffer(), GWEN_ERROR_INTERNAL, GWEN_LOGDOMAIN, and GWEN_PasswordStore_EncryptWriteFile().
Referenced by GWEN_PasswordStore_SetPassword().
|
static |
Definition at line 87 of file passwdstore.c.
References DBG_ERROR, DBG_INFO, GWEN_Buffer_AdjustUsedBytes(), GWEN_Buffer_AllocRoom(), GWEN_Buffer_GetMaxUnsegmentedWrite(), GWEN_Buffer_GetPosPointer(), GWEN_Buffer_IncrementPos(), GWEN_ERROR_IO, GWEN_ERROR_NOT_FOUND, and GWEN_LOGDOMAIN.
Referenced by GWEN_PasswordStore_ReadDecryptFile().
|
static |
Definition at line 158 of file passwdstore.c.
References DBG_ERROR, GWEN_ERROR_IO, GWEN_LOGDOMAIN, and writeToFile().
Referenced by GWEN_PasswordStore_EncryptWriteFile().
|
static |
Definition at line 134 of file passwdstore.c.
References DBG_ERROR, GWEN_ERROR_IO, and GWEN_LOGDOMAIN.
Referenced by writeFile().