* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
*
* This software is licensed as described in the file COPYING, which
* you should have received as part of this distribution. The terms
#include "tool_metalink.h"
+typedef enum {
+ ERR_NONE,
+ ERR_BINARY_TERMINAL = 1, /* binary to terminal detected */
+ ERR_LAST
+} curl_error;
+
struct GlobalConfig;
struct OperationConfig {
struct getout *url_last; /* point to the last/current node */
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 *cipher_list;
char *proxy_cipher_list;
char *cert;
char *crlfile;
char *proxy_crlfile;
char *pinnedpubkey;
+ char *proxy_pinnedpubkey;
char *key;
char *proxy_key;
char *key_type;
bool crlf;
char *customrequest;
char *krblevel;
+ char *request_target;
long httpversion;
bool nobuffer;
bool readbusy; /* set when reading input returns EAGAIN */
bool insecure_ok; /* set TRUE to allow insecure SSL connects */
bool proxy_insecure_ok; /* set TRUE to allow insecure SSL connects
for proxy */
+ bool terminal_binary_ok;
bool verifystatus;
bool create_dirs;
bool ftp_create_dirs;
bool proxybasic;
bool proxyanyauth;
char *writeout; /* %-styled format string to output */
- bool writeenv; /* write results to environment, if available */
struct curl_slist *quote;
struct curl_slist *postquote;
struct curl_slist *prequote;
long ssl_version;
+ long ssl_version_max;
long proxy_ssl_version;
long ip_version;
curl_TimeCond timecond;
- time_t condtime;
+ curl_off_t condtime;
struct curl_slist *headers;
struct curl_slist *proxyheaders;
- struct curl_httppost *httppost;
- struct curl_httppost *last_post;
+ curl_mime *mimepost;
+ curl_mime *mimecurrent;
struct curl_slist *telnet_options;
struct curl_slist *resolve;
struct curl_slist *connect_to;
char *preproxy;
int socks5_gssapi_nec; /* The NEC reference server does not protect the
encryption type exchange */
+ unsigned long socks5_auth;/* auth bitmask for socks5 proxies */
char *proxy_service_name; /* set authentication service name for HTTP and
SOCKS5 proxies */
char *service_name; /* set authentication service name for DIGEST-MD5,
bool falsestart;
bool path_as_is;
double expect100timeout;
+ bool suppress_connect_headers; /* suppress proxy CONNECT response headers
+ from user callbacks */
+ curl_error synthetic_error; /* if non-zero, it overrides any libcurl
+ error */
+ bool ssh_compression; /* enable/disable SSH compression */
+ long happy_eyeballs_timeout_ms; /* happy eyeballs timeout in milliseconds.
+ 0 is valid. default: CURL_HET_DEFAULT. */
struct GlobalConfig *global;
struct OperationConfig *prev;
struct OperationConfig *next; /* Always last in the struct */