From 2249f7fe70a056498ba1ebd59abc47ca9b37cd3a Mon Sep 17 00:00:00 2001 From: Steve Holme Date: Sun, 23 Feb 2014 13:15:31 +0000 Subject: [PATCH] tool_cfgable: Added global config structure --- src/tool_cfgable.h | 9 ++++++++- src/tool_main.c | 5 ++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/tool_cfgable.h b/src/tool_cfgable.h index 511227c..69c2c2e 100644 --- a/src/tool_cfgable.h +++ b/src/tool_cfgable.h @@ -28,7 +28,7 @@ #include "tool_metalink.h" struct OperationConfig { - CURL *easy; /* once we have one, we keep it here */ + CURL *easy; /* A copy of the handle from GlobalConfig */ bool remote_time; char *random_file; char *egd_file; @@ -220,6 +220,13 @@ struct OperationConfig { struct OperationConfig* next; /* Always last in the struct */ }; +struct GlobalConfig { + CURL *easy; /* Once we have one, we keep it here */ + + struct OperationConfig *first; + struct OperationConfig *last; /* Always last in the struct */ +}; + void config_init(struct OperationConfig* config); void config_free(struct OperationConfig* config); diff --git a/src/tool_main.c b/src/tool_main.c index 9542b05..0cc767b 100644 --- a/src/tool_main.c +++ b/src/tool_main.c @@ -162,8 +162,11 @@ static void main_free(void) int main(int argc, char *argv[]) { CURLcode result = CURLE_OK; + struct GlobalConfig global; struct OperationConfig *config; + memset(&global, 0, sizeof(global)); + main_checkfds(); #if defined(HAVE_SIGNAL) && defined(SIGPIPE) @@ -173,7 +176,7 @@ int main(int argc, char *argv[]) /* Initialize memory tracking */ memory_tracking_init(); - /* Allocate the initial config */ + /* Allocate the initial operate config */ config = malloc(sizeof(struct OperationConfig)); if(config) { -- 2.7.4