summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSteve Holme <steve_holme@hotmail.com>2014-02-23 13:15:31 +0000
committerSteve Holme <steve_holme@hotmail.com>2014-02-23 13:12:47 +0000
commit2249f7fe70a056498ba1ebd59abc47ca9b37cd3a (patch)
tree331e6ffa8a4ea78f003e8bff5de56f35d2ea4f98 /src
parent705a4cb549d7cd798162430512f482ba930226d6 (diff)
downloadcurl-2249f7fe70a056498ba1ebd59abc47ca9b37cd3a.tar.gz
tool_cfgable: Added global config structure
Diffstat (limited to 'src')
-rw-r--r--src/tool_cfgable.h9
-rw-r--r--src/tool_main.c5
2 files changed, 12 insertions, 2 deletions
diff --git a/src/tool_cfgable.h b/src/tool_cfgable.h
index 511227cb6..69c2c2ee9 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 9542b059a..0cc767b1f 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) {