tool_operate: Moved required argument getting into separate function
This commit is contained in:
		| @@ -234,32 +234,18 @@ static int operate_do(struct Configurable *config) | ||||
|   ** from outside of nested loops further down below. | ||||
|   */ | ||||
|  | ||||
|   if(config->userpwd && !config->xoauth2_bearer) { | ||||
|     res = checkpasswd("host", &config->userpwd); | ||||
|   /* Get the required aguments */ | ||||
|   res = get_args(config); | ||||
|   if(res) | ||||
|     goto quit_curl; | ||||
|   } | ||||
|  | ||||
|   if(config->proxyuserpwd) { | ||||
|     res = checkpasswd("proxy", &config->proxyuserpwd); | ||||
|     if(res) | ||||
|       goto quit_curl; | ||||
|   } | ||||
|  | ||||
|   /* Check we have a url */ | ||||
|   if(!config->url_list || !config->url_list->url) { | ||||
|     helpf(config->errors, "no URL specified!\n"); | ||||
|     res = CURLE_FAILED_INIT; | ||||
|     goto quit_curl; | ||||
|   } | ||||
|  | ||||
|   if(!config->useragent) | ||||
|     config->useragent = my_useragent(); | ||||
|   if(!config->useragent) { | ||||
|     helpf(config->errors, "out of memory\n"); | ||||
|     res = CURLE_OUT_OF_MEMORY; | ||||
|     goto quit_curl; | ||||
|   } | ||||
|  | ||||
|   /* On WIN32 we can't set the path to curl-ca-bundle.crt | ||||
|    * at compile time. So we look here for the file in two ways: | ||||
|    * 1: look at the environment variable CURL_CA_BUNDLE for a path | ||||
|   | ||||
| @@ -30,19 +30,10 @@ | ||||
| #include "tool_cfgable.h" | ||||
| #include "tool_convert.h" | ||||
| #include "tool_operhlp.h" | ||||
| #include "tool_version.h" | ||||
| #include "tool_metalink.h" | ||||
|  | ||||
| #include "memdebug.h" /* keep this as LAST include */ | ||||
|  | ||||
| /* | ||||
|  * my_useragent: returns allocated string with default user agent | ||||
|  */ | ||||
| char *my_useragent(void) | ||||
| { | ||||
|   return strdup( CURL_NAME "/" CURL_VERSION ); | ||||
| } | ||||
|  | ||||
| /* | ||||
|  * Print list of OpenSSL supported engines | ||||
|  */ | ||||
| @@ -192,4 +183,3 @@ CURLcode get_url_file_name(char **filename, const char *url) | ||||
|  | ||||
|   return CURLE_OK; | ||||
| } | ||||
|  | ||||
|   | ||||
| @@ -23,8 +23,6 @@ | ||||
|  ***************************************************************************/ | ||||
| #include "tool_setup.h" | ||||
|  | ||||
| char *my_useragent(void); | ||||
|  | ||||
| void list_engines(const struct curl_slist *engines); | ||||
|  | ||||
| void clean_getout(struct Configurable *config); | ||||
|   | ||||
| @@ -33,6 +33,7 @@ | ||||
| #include "tool_homedir.h" | ||||
| #include "tool_msgs.h" | ||||
| #include "tool_paramhlp.h" | ||||
| #include "tool_version.h" | ||||
|  | ||||
| #include "memdebug.h" /* keep this as LAST include */ | ||||
|  | ||||
| @@ -365,7 +366,7 @@ ParameterError str2offset(curl_off_t *val, const char *str) | ||||
|   return PARAM_BAD_NUMERIC; | ||||
| } | ||||
|  | ||||
| CURLcode checkpasswd(const char *kind, /* for what purpose */ | ||||
| static CURLcode checkpasswd(const char *kind, /* for what purpose */ | ||||
|                             char **userpwd)   /* pointer to allocated string */ | ||||
| { | ||||
|   char *psep; | ||||
| @@ -464,3 +465,40 @@ long delegation(struct Configurable *config, char *str) | ||||
|   return CURLGSSAPI_DELEGATION_NONE; | ||||
| } | ||||
|  | ||||
| /* | ||||
|  * my_useragent: returns allocated string with default user agent | ||||
|  */ | ||||
| static char *my_useragent(void) | ||||
| { | ||||
|   return strdup(CURL_NAME "/" CURL_VERSION); | ||||
| } | ||||
|  | ||||
| CURLcode get_args(struct Configurable *config) | ||||
| { | ||||
|   CURLcode result = CURLE_OK; | ||||
|  | ||||
|   /* Check we have a password for the given host user */ | ||||
|   if(config->userpwd && !config->xoauth2_bearer) { | ||||
|     result = checkpasswd("host", &config->userpwd); | ||||
|     if(result) | ||||
|       return result; | ||||
|   } | ||||
|  | ||||
|   /* Check we have a password for the given proxy user */ | ||||
|   if(config->proxyuserpwd) { | ||||
|     result = checkpasswd("proxy", &config->proxyuserpwd); | ||||
|     if(result) | ||||
|       return result; | ||||
|   } | ||||
|  | ||||
|   /* Check we have a user agent */ | ||||
|   if(!config->useragent) { | ||||
|     config->useragent = my_useragent(); | ||||
|     if(!config->useragent) { | ||||
|       helpf(config->errors, "out of memory\n"); | ||||
|       result = CURLE_OUT_OF_MEMORY; | ||||
|     } | ||||
|   } | ||||
|  | ||||
|   return result; | ||||
| } | ||||
|   | ||||
| @@ -40,7 +40,7 @@ long proto2num(struct Configurable *config, long *val, const char *str); | ||||
|  | ||||
| ParameterError str2offset(curl_off_t *val, const char *str); | ||||
|  | ||||
| CURLcode checkpasswd(const char *kind, char **userpwd); | ||||
| CURLcode get_args(struct Configurable *config); | ||||
|  | ||||
| ParameterError add2list(struct curl_slist **list, const char *ptr); | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Steve Holme
					Steve Holme