16 #include <gwenhywfar/debug.h> 17 #include <gwenhywfar/sar.h> 18 #include <gwenhywfar/cryptmgrkeys.h> 19 #include <gwenhywfar/cryptkeyrsa.h> 43 "Specify the archive file name",
44 "Specify the archive file name" 54 "Specify the keyfile to use",
55 "Specify the keyfile to use" 76 "Show this help screen",
77 "Show this help screen" 87 fprintf(stderr,
"ERROR: Could not parse arguments\n");
95 fprintf(stderr,
"ERROR: Could not create help string\n");
114 fprintf(stderr,
"ERROR: Error reading keyfile [%s] (%d)\n", keyFile, rv);
119 fprintf(stderr,
"ERROR: Error decoding keyfile [%s] (%d)\n", keyFile, rv);
129 fprintf(stderr,
"ERROR: Error opening archive (%d)\n", rv);
140 fprintf(stderr,
"ERROR: Error verifying archive (%d)\n", rv);
151 fprintf(stderr,
"ERROR: Error closing archive (%d)\n", rv);
157 fprintf(stdout,
"Signature is valid.\n");
char * GWEN_Buffer_GetStart(const GWEN_BUFFER *bf)
struct GWEN_DB_NODE GWEN_DB_NODE
#define GWEN_SYNCIO_FILE_FLAGS_READ
GWEN_SAR * GWEN_Sar_new(void)
int GWEN_Sar_CloseArchive(GWEN_SAR *sr, int abandon)
#define GWEN_ARGS_FLAGS_HELP
GWEN_BUFFER * GWEN_Buffer_new(char *buffer, uint32_t size, uint32_t used, int take)
#define GWEN_ARGS_RESULT_HELP
void GWEN_Crypt_KeyRsa_AddFlags(GWEN_CRYPT_KEY *k, uint32_t fl)
#define GWEN_ARGS_RESULT_ERROR
GWEN_CRYPT_KEY * GWEN_Crypt_KeyRsa_fromDb(GWEN_DB_NODE *db)
int GWEN_Args_Usage(const GWEN_ARGS *args, GWEN_BUFFER *ubuf, GWEN_ARGS_OUTTYPE ot)
int GWEN_Sar_Verify(GWEN_SAR *sr, GWEN_CRYPTMGR *cm)
#define GWEN_ARGS_MODE_ALLOW_FREEPARAM
const char * GWEN_DB_GetCharValue(GWEN_DB_NODE *n, const char *path, int idx, const char *defVal)
void GWEN_Sar_free(GWEN_SAR *sr)
struct GWEN_CRYPT_KEY GWEN_CRYPT_KEY
GWEN_DB_NODE * GWEN_DB_GetGroup(GWEN_DB_NODE *n, uint32_t flags, const char *path)
void GWEN_Buffer_free(GWEN_BUFFER *bf)
struct GWEN_BUFFER GWEN_BUFFER
A dynamically resizeable text buffer.
GWEN_CRYPTMGR * GWEN_CryptMgrKeys_new(const char *localName, GWEN_CRYPT_KEY *localKey, const char *peerName, GWEN_CRYPT_KEY *peerKey, int ownKeys)
#define GWEN_ARGS_FLAGS_LAST
void GWEN_CryptMgr_free(GWEN_CRYPTMGR *cm)
#define GWEN_CRYPT_KEYRSA_FLAGS_DIRECTSIGN
int GWEN_Sar_OpenArchive(GWEN_SAR *sr, const char *aname, GWEN_SYNCIO_FILE_CREATIONMODE cm, uint32_t acc)
int GWEN_Args_Check(int argc, char **argv, int startAt, uint32_t mode, const GWEN_ARGS *args, GWEN_DB_NODE *db)
GWENHYWFAR_API int GWEN_DB_ReadFile(GWEN_DB_NODE *n, const char *fname, uint32_t dbflags)
GWEN_DB_NODE * GWEN_DB_Group_new(const char *name)
struct GWEN_CRYPTMGR GWEN_CRYPTMGR
#define GWEN_ARGS_FLAGS_HAS_ARGUMENT
#define GWEN_DB_FLAGS_DEFAULT
int verifyArchive(GWEN_DB_NODE *dbArgs, int argc, char **argv)