curl: Fixed usage of DNS options when not using c-ares resolver
Commit 32352ed6ad introduced various DNS options, however, these
would cause curl to exit with CURLE_NOT_BUILT_IN when c-ares wasn't
being used as the backend resolver even if the options weren't set
by the user.
Additionally corrected some minor coding style errors from the same
commit.
This commit is contained in:
@@ -66,10 +66,10 @@ struct Configurable {
|
||||
char *range;
|
||||
long low_speed_limit;
|
||||
long low_speed_time;
|
||||
char* dns_servers; /* dot notation: 1.1.1.1;2.2.2.2 */
|
||||
char* dns_interface; /* interface name */
|
||||
char* dns_ipv4_addr; /* dot notation */
|
||||
char* dns_ipv6_addr; /* dot notation */
|
||||
char *dns_servers; /* dot notation: 1.1.1.1;2.2.2.2 */
|
||||
char *dns_interface; /* interface name */
|
||||
char *dns_ipv4_addr; /* dot notation */
|
||||
char *dns_ipv6_addr; /* dot notation */
|
||||
int showerror; /* -1 == unset, default => show errors
|
||||
0 => -s is used to NOT show errors
|
||||
1 => -S has been used to show errors */
|
||||
|
||||
@@ -80,7 +80,7 @@ static const struct LongShort aliases[]= {
|
||||
{"*B", "bearer", TRUE},
|
||||
{"*c", "connect-timeout", TRUE},
|
||||
{"*d", "ciphers", TRUE},
|
||||
{"*D", "dns-interface", TRUE},
|
||||
{"*D", "dns-interface", TRUE},
|
||||
{"*e", "disable-epsv", FALSE},
|
||||
{"*E", "epsv", FALSE},
|
||||
/* 'epsv' made like this to make --no-epsv and --epsv to work
|
||||
|
||||
@@ -1239,10 +1239,16 @@ int operate(struct Configurable *config, int argc, argv_item_t argv[])
|
||||
my_setopt(curl, CURLOPT_PROGRESSDATA, &progressbar);
|
||||
}
|
||||
|
||||
my_setopt_str(curl, CURLOPT_DNS_SERVERS, config->dns_servers);
|
||||
/* new in libcurl 7.24.0: */
|
||||
if(config->dns_servers)
|
||||
my_setopt_str(curl, CURLOPT_DNS_SERVERS, config->dns_servers);
|
||||
|
||||
/* new in libcurl 7.33.0: */
|
||||
my_setopt_str(curl, CURLOPT_DNS_INTERFACE, config->dns_interface);
|
||||
my_setopt_str(curl, CURLOPT_DNS_LOCAL_IP4, config->dns_ipv4_addr);
|
||||
if(config->dns_interface)
|
||||
my_setopt_str(curl, CURLOPT_DNS_INTERFACE, config->dns_interface);
|
||||
if(config->dns_ipv4_addr)
|
||||
my_setopt_str(curl, CURLOPT_DNS_LOCAL_IP4, config->dns_ipv4_addr);
|
||||
if(config->dns_ipv6_addr)
|
||||
my_setopt_str(curl, CURLOPT_DNS_LOCAL_IP6, config->dns_ipv6_addr);
|
||||
|
||||
/* new in libcurl 7.6.2: */
|
||||
|
||||
Reference in New Issue
Block a user