mirror of
https://github.com/moparisthebest/curl
synced 2025-01-10 21:48:10 -05:00
curl: --doh-url added
This commit is contained in:
parent
abff183387
commit
5ffbb63e42
@ -2,7 +2,7 @@
|
||||
|
||||
DPAGES = abstract-unix-socket.d anyauth.d append.d basic.d cacert.d capath.d cert.d \
|
||||
cert-status.d cert-type.d ciphers.d compressed.d compressed-ssh.d \
|
||||
config.d \
|
||||
config.d doh-url.d \
|
||||
connect-timeout.d connect-to.d continue-at.d cookie.d cookie-jar.d \
|
||||
create-dirs.d crlf.d crlfile.d data-ascii.d data-binary.d data.d \
|
||||
data-raw.d data-urlencode.d delegation.d digest.d disable.d \
|
||||
|
9
docs/cmdline-opts/doh-url.d
Normal file
9
docs/cmdline-opts/doh-url.d
Normal file
@ -0,0 +1,9 @@
|
||||
Long: doh-url
|
||||
Arg: <URL>
|
||||
Help: Resolve host names over DOH
|
||||
Protocols: all
|
||||
---
|
||||
Specifies which DNS-over-HTTPS (DOH) server to use to resolve hostnames,
|
||||
instead of using the default name resolver mechanism. The URL must be HTTPS.
|
||||
|
||||
If this option is used several times, the last one will be used.
|
@ -102,6 +102,7 @@ static void free_config_fields(struct OperationConfig *config)
|
||||
config->url_get = NULL;
|
||||
config->url_out = NULL;
|
||||
|
||||
Curl_safefree(config->doh_url);
|
||||
Curl_safefree(config->cipher_list);
|
||||
Curl_safefree(config->proxy_cipher_list);
|
||||
Curl_safefree(config->cert);
|
||||
|
@ -115,6 +115,7 @@ struct OperationConfig {
|
||||
struct getout *url_get; /* point to the node to fill in URL */
|
||||
struct getout *url_out; /* point to the node to fill in outfile */
|
||||
struct getout *url_ul; /* point to the node to fill in upload */
|
||||
char *doh_url;
|
||||
char *cipher_list;
|
||||
char *proxy_cipher_list;
|
||||
char *cipher13_list;
|
||||
|
@ -80,6 +80,7 @@ static const struct LongShort aliases[]= {
|
||||
{"*b", "egd-file", ARG_STRING},
|
||||
{"*B", "oauth2-bearer", ARG_STRING},
|
||||
{"*c", "connect-timeout", ARG_STRING},
|
||||
{"*C", "doh-url" , ARG_STRING},
|
||||
{"*d", "ciphers", ARG_STRING},
|
||||
{"*D", "dns-interface", ARG_STRING},
|
||||
{"*e", "disable-epsv", ARG_BOOL},
|
||||
@ -619,6 +620,9 @@ ParameterError getparameter(const char *flag, /* f or -long-flag */
|
||||
if(err)
|
||||
return err;
|
||||
break;
|
||||
case 'C': /* doh-url */
|
||||
GetStr(&config->doh_url, nextarg);
|
||||
break;
|
||||
case 'd': /* ciphers */
|
||||
GetStr(&config->cipher_list, nextarg);
|
||||
break;
|
||||
|
@ -118,6 +118,8 @@ static const struct helptxt helptext[] = {
|
||||
"IPv6 address to use for DNS requests"},
|
||||
{" --dns-servers <addresses>",
|
||||
"DNS server addrs to use"},
|
||||
{" --doh-url <URL>",
|
||||
"Resolve host names over DOH"},
|
||||
{"-D, --dump-header <filename>",
|
||||
"Write the received headers to <filename>"},
|
||||
{" --egd-file <file>",
|
||||
|
@ -1262,6 +1262,9 @@ static CURLcode operate_do(struct GlobalConfig *global,
|
||||
my_setopt(curl, CURLOPT_CONNECTTIMEOUT_MS,
|
||||
(long)(config->connecttimeout * 1000));
|
||||
|
||||
if(config->doh_url)
|
||||
my_setopt_str(curl, CURLOPT_DOH_URL, config->doh_url);
|
||||
|
||||
if(config->cipher_list)
|
||||
my_setopt_str(curl, CURLOPT_SSL_CIPHER_LIST, config->cipher_list);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user