Loading src/tool_operate.c +2 −1 Original line number Diff line number Diff line Loading @@ -1838,11 +1838,12 @@ int operate(struct Configurable *config, int argc, argv_item_t argv[]) } /* Perform the main operations */ else { size_t count = 0; struct Configurable *operation = config; /* Get the required aguments for each operation */ while(!result && operation) { result = get_args(operation); result = get_args(operation, count++); operation = operation->next; } Loading src/tool_paramhlp.c +16 −7 Original line number Diff line number Diff line Loading @@ -367,6 +367,8 @@ ParameterError str2offset(curl_off_t *val, const char *str) } static CURLcode checkpasswd(const char *kind, /* for what purpose */ const size_t index, /* operation index */ const bool last, /* TRUE if last operation */ char **userpwd) /* pointer to allocated string */ { char *psep; Loading @@ -393,9 +395,15 @@ static CURLcode checkpasswd(const char *kind, /* for what purpose */ *osep = '\0'; /* build a nice-looking prompt */ if(!index && last) curlx_msnprintf(prompt, sizeof(prompt), "Enter %s password for user '%s':", kind, *userpwd); else curlx_msnprintf(prompt, sizeof(prompt), "Enter %s password for user '%s' on URL #%" CURL_FORMAT_CURL_OFF_TU ":", kind, *userpwd, index + 1); /* get password */ getpass_r(prompt, passwd, sizeof(passwd)); Loading Loading @@ -473,20 +481,21 @@ static char *my_useragent(void) return strdup(CURL_NAME "/" CURL_VERSION); } CURLcode get_args(struct Configurable *config) CURLcode get_args(struct Configurable *config, const size_t index) { CURLcode result = CURLE_OK; bool last = (config->next ? FALSE : TRUE); /* Check we have a password for the given host user */ if(config->userpwd && !config->xoauth2_bearer) { result = checkpasswd("host", &config->userpwd); result = checkpasswd("host", index, last, &config->userpwd); if(result) return result; } /* Check we have a password for the given proxy user */ if(config->proxyuserpwd) { result = checkpasswd("proxy", &config->proxyuserpwd); result = checkpasswd("proxy", index, last, &config->proxyuserpwd); if(result) return result; } Loading src/tool_paramhlp.h +1 −1 Original line number Diff line number Diff line Loading @@ -40,7 +40,7 @@ long proto2num(struct Configurable *config, long *val, const char *str); ParameterError str2offset(curl_off_t *val, const char *str); CURLcode get_args(struct Configurable *config); CURLcode get_args(struct Configurable *config, const size_t index); ParameterError add2list(struct curl_slist **list, const char *ptr); Loading Loading
src/tool_operate.c +2 −1 Original line number Diff line number Diff line Loading @@ -1838,11 +1838,12 @@ int operate(struct Configurable *config, int argc, argv_item_t argv[]) } /* Perform the main operations */ else { size_t count = 0; struct Configurable *operation = config; /* Get the required aguments for each operation */ while(!result && operation) { result = get_args(operation); result = get_args(operation, count++); operation = operation->next; } Loading
src/tool_paramhlp.c +16 −7 Original line number Diff line number Diff line Loading @@ -367,6 +367,8 @@ ParameterError str2offset(curl_off_t *val, const char *str) } static CURLcode checkpasswd(const char *kind, /* for what purpose */ const size_t index, /* operation index */ const bool last, /* TRUE if last operation */ char **userpwd) /* pointer to allocated string */ { char *psep; Loading @@ -393,9 +395,15 @@ static CURLcode checkpasswd(const char *kind, /* for what purpose */ *osep = '\0'; /* build a nice-looking prompt */ if(!index && last) curlx_msnprintf(prompt, sizeof(prompt), "Enter %s password for user '%s':", kind, *userpwd); else curlx_msnprintf(prompt, sizeof(prompt), "Enter %s password for user '%s' on URL #%" CURL_FORMAT_CURL_OFF_TU ":", kind, *userpwd, index + 1); /* get password */ getpass_r(prompt, passwd, sizeof(passwd)); Loading Loading @@ -473,20 +481,21 @@ static char *my_useragent(void) return strdup(CURL_NAME "/" CURL_VERSION); } CURLcode get_args(struct Configurable *config) CURLcode get_args(struct Configurable *config, const size_t index) { CURLcode result = CURLE_OK; bool last = (config->next ? FALSE : TRUE); /* Check we have a password for the given host user */ if(config->userpwd && !config->xoauth2_bearer) { result = checkpasswd("host", &config->userpwd); result = checkpasswd("host", index, last, &config->userpwd); if(result) return result; } /* Check we have a password for the given proxy user */ if(config->proxyuserpwd) { result = checkpasswd("proxy", &config->proxyuserpwd); result = checkpasswd("proxy", index, last, &config->proxyuserpwd); if(result) return result; } Loading
src/tool_paramhlp.h +1 −1 Original line number Diff line number Diff line Loading @@ -40,7 +40,7 @@ long proto2num(struct Configurable *config, long *val, const char *str); ParameterError str2offset(curl_off_t *val, const char *str); CURLcode get_args(struct Configurable *config); CURLcode get_args(struct Configurable *config, const size_t index); ParameterError add2list(struct curl_slist **list, const char *ptr); Loading