curl: add --false-start option

This commit is contained in:
Alessandro Ghedini 2015-02-14 18:17:04 +01:00 committed by Kamil Dudka
parent 185914fd31
commit 1f651d1d4d
5 changed files with 20 additions and 0 deletions

View File

@ -562,6 +562,15 @@ or no response at all is received, the verification fails.
This is currently only implemented in the OpenSSL, GnuTLS and NSS backends.
(Added in 7.41.0)
.IP "--false-start"
(SSL) Tells curl to use false start during the TLS handshake. False start is a
mode where a TLS client will start sending application data before verifying
the server's Finished message, thus saving a round trip when performing a full
handshake.
This is currently only implemented in the NSS backend.
(Added in 7.42.0)
.IP "-f, --fail"
(HTTP) Fail silently (no output at all) on server errors. This is mostly done
to better enable scripts etc to better deal with failed attempts. In normal

View File

@ -207,6 +207,8 @@ struct OperationConfig {
bool noalpn; /* enable/disable TLS ALPN extension */
char *unix_socket_path; /* path to Unix domain socket */
bool falsestart;
struct GlobalConfig *global;
struct OperationConfig *prev;
struct OperationConfig *next; /* Always last in the struct */

View File

@ -218,6 +218,7 @@ static const struct LongShort aliases[]= {
{"Eo", "login-options", TRUE},
{"Ep", "pinnedpubkey", TRUE},
{"Eq", "cert-status", FALSE},
{"Er", "false-start", FALSE},
{"f", "fail", FALSE},
{"F", "form", TRUE},
{"Fs", "form-string", TRUE},
@ -1368,6 +1369,10 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
config->verifystatus = TRUE;
break;
case 'r': /* --false-start */
config->falsestart = TRUE;
break;
default: /* certificate file */
{
char *certname, *passphrase;

View File

@ -83,6 +83,7 @@ static const char *const helptext[] = {
" --environment Write results to environment variables (RISC OS)",
#endif
" -f, --fail Fail silently (no output at all) on HTTP errors (H)",
" --false-start Enable TLS False Start.",
" -F, --form CONTENT Specify HTTP multipart POST data (H)",
" --form-string STRING Specify HTTP multipart POST data (H)",
" --ftp-account DATA Account data string (F)",

View File

@ -1041,6 +1041,9 @@ static CURLcode operate_do(struct GlobalConfig *global,
if(config->verifystatus)
my_setopt(curl, CURLOPT_SSL_VERIFYSTATUS, 1L);
if(config->falsestart)
my_setopt(curl, CURLOPT_SSL_FALSESTART, 1L);
}
if(built_in_protos & (CURLPROTO_SCP|CURLPROTO_SFTP)) {