tool_cfgable: Added global config structure
authorSteve Holme <steve_holme@hotmail.com>
Sun, 23 Feb 2014 13:15:31 +0000 (13:15 +0000)
committerSteve Holme <steve_holme@hotmail.com>
Sun, 23 Feb 2014 13:12:47 +0000 (13:12 +0000)
src/tool_cfgable.h
src/tool_main.c

index 511227c..69c2c2e 100644 (file)
@@ -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);
 
index 9542b05..0cc767b 100644 (file)
@@ -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) {