14#define GSA_IS_EXPERIMENTAL
15#define DEBUG_GSA_TOOL */
17#include <gwenhywfar/debug.h>
18#include <gwenhywfar/cgui.h>
46 fname, strerror(errno));
61 fname, strerror(errno));
70int main(
int argc,
char **argv)
86 "Show this help screen",
87 "Show this help screen"
106 fprintf(stderr,
"Could not initialize Gwenhywfar.\n");
120#ifdef GSA_IS_EXPERIMENTAL
121 fprintf(stderr,
"\n");
122 fprintf(stderr,
"\n");
123 fprintf(stderr,
"=================== WARNING ===================\n");
124 fprintf(stderr,
"This tool is still EXPERIMENTAL !!!\n");
125 fprintf(stderr,
"Please DON'T USE it with your data files !\n");
126 fprintf(stderr,
"===============================================\n");
127 fprintf(stderr,
"\n");
128 fprintf(stderr,
"\n");
138 fprintf(stderr,
"ERROR: Could not parse arguments main\n");
146 I18N(
"GWEN's Simple Archiver"));
153 I18N(
" [GLOBAL OPTIONS] COMMAND "
154 "[LOCAL OPTIONS]\n"));
156 I18N(
"\nGlobal Options:\n"));
158 fprintf(stderr,
"ERROR: Could not create help string\n");
164 fprintf(stderr,
"%s\n",
I18N(
"\nCommands:\n\n"));
175 fprintf(stderr,
"ERROR: Command needed.\n");
184 fprintf(stderr,
"ERROR: Unknown command \"%s\".\n", cmd);
191 "WARNING: Could not deinitialize Gwenhywfar.\n");
int add2Archive(GWEN_DB_NODE *dbArgs, int argc, char **argv)
GWEN_BUFFER * GWEN_Buffer_new(char *buffer, uint32_t size, uint32_t used, int take)
int GWEN_Buffer_IncrementPos(GWEN_BUFFER *bf, uint32_t i)
uint32_t GWEN_Buffer_GetMaxUnsegmentedWrite(GWEN_BUFFER *bf)
int GWEN_Buffer_AdjustUsedBytes(GWEN_BUFFER *bf)
char * GWEN_Buffer_GetPosPointer(const GWEN_BUFFER *bf)
void GWEN_Buffer_free(GWEN_BUFFER *bf)
int GWEN_Buffer_AppendString(GWEN_BUFFER *bf, const char *buffer)
char * GWEN_Buffer_GetStart(const GWEN_BUFFER *bf)
int GWEN_Buffer_AllocRoom(GWEN_BUFFER *bf, uint32_t size)
GWEN_GUI * GWEN_Gui_CGui_new(void)
int checkArchive(GWEN_DB_NODE *dbArgs, int argc, char **argv)
const char * GWEN_DB_GetCharValue(GWEN_DB_NODE *n, const char *path, int idx, const char *defVal)
GWEN_DB_NODE * GWEN_DB_Group_new(const char *name)
struct GWEN_DB_NODE GWEN_DB_NODE
#define DBG_INFO(dbg_logger, format,...)
void GWEN_Funcs_Usage_With_Help(const GWEN_FUNCS *funcs)
const GWEN_FUNCS * GWEN_Funcs_Find(const GWEN_FUNCS *funcs, const char *name)
int GWEN_Funcs_Call_DB_NODE_Args(const GWEN_FUNCS *func, GWEN_DB_NODE *node, int argc, char **argv)
#define GWEN_FUNCS_ENTRY_DB_NODE_ARGS(a, b)
#define GWEN_FUNCS_ENTRY_DB_NODE_ARGS_HELP(a, b, c)
#define GWEN_FUNCS_ENTRY_END()
struct GWEN_BUFFER GWEN_BUFFER
A dynamically resizeable text buffer.
int createArchive(GWEN_DB_NODE *dbArgs, int argc, char **argv)
int verifyArchive(GWEN_DB_NODE *dbArgs, int argc, char **argv)
int signArchive(GWEN_DB_NODE *dbArgs, int argc, char **argv)
int mkArchiveKey(GWEN_DB_NODE *dbArgs, int argc, char **argv)
int listArchive(GWEN_DB_NODE *dbArgs, int argc, char **argv)
int releaseFillIn(GWEN_DB_NODE *dbArgs, int argc, char **argv)
int main(int argc, char **argv)
int readFile(const char *fname, GWEN_BUFFER *dbuf)
void GWEN_Gui_SetGui(GWEN_GUI *gui)
int GWEN_Logger_Open(const char *logDomain, const char *ident, const char *file, GWEN_LOGGER_LOGTYPE logtype, GWEN_LOGGER_FACILITY facility)
void GWEN_Logger_SetLevel(const char *logDomain, GWEN_LOGGER_LEVEL l)
@ GWEN_LoggerType_Console
@ GWEN_LoggerFacility_User
@ GWEN_LoggerLevel_Warning
int GWEN_Args_Check(int argc, char **argv, int startAt, uint32_t mode, const GWEN_ARGS *args, GWEN_DB_NODE *db)
int GWEN_Args_Usage(const GWEN_ARGS *args, GWEN_BUFFER *ubuf, GWEN_ARGS_OUTTYPE ot)
#define GWEN_ARGS_RESULT_ERROR
#define GWEN_ARGS_MODE_STOP_AT_FREEPARAM
#define GWEN_ARGS_MODE_ALLOW_FREEPARAM
#define GWEN_ARGS_FLAGS_HELP
#define GWEN_ARGS_FLAGS_LAST
#define GWEN_ARGS_RESULT_HELP
#define GWENHYWFAR_VERSION_FULL_STRING