aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/tool_cfgable.h3
-rw-r--r--src/tool_getparam.c3
-rw-r--r--src/tool_parsecfg.c3
3 files changed, 9 insertions, 0 deletions
diff --git a/src/tool_cfgable.h b/src/tool_cfgable.h
index e88b97896..77c603752 100644
--- a/src/tool_cfgable.h
+++ b/src/tool_cfgable.h
@@ -27,6 +27,8 @@
#include "tool_metalink.h"
+struct GlobalConfig;
+
struct OperationConfig {
CURL *easy; /* A copy of the handle from GlobalConfig */
bool remote_time;
@@ -213,6 +215,7 @@ struct OperationConfig {
bool nonpn; /* enable/disable TLS NPN extension */
bool noalpn; /* enable/disable TLS ALPN extension */
+ struct GlobalConfig *global;
struct OperationConfig* prev;
struct OperationConfig* next; /* Always last in the struct */
};
diff --git a/src/tool_getparam.c b/src/tool_getparam.c
index e4cc69dd1..b9c5eb701 100644
--- a/src/tool_getparam.c
+++ b/src/tool_getparam.c
@@ -1838,6 +1838,9 @@ ParameterError parse_args(struct GlobalConfig *config, int argc,
/* Copy the easy handle */
operation->next->easy = config->easy;
+ /* Set the global config pointer */
+ operation->next->global = config;
+
/* Update the last operation pointer */
config->last = operation->next;
diff --git a/src/tool_parsecfg.c b/src/tool_parsecfg.c
index 9adbe8229..53e2660a6 100644
--- a/src/tool_parsecfg.c
+++ b/src/tool_parsecfg.c
@@ -236,6 +236,9 @@ int parseconfig(const char *filename, struct GlobalConfig *global)
/* Copy the easy handle */
operation->next->easy = global->easy;
+ /* Set the global config pointer */
+ operation->next->global = global;
+
/* Update the last operation pointer */
global->last = operation->next;