Loading docs/curl.1 +17 −0 Original line number Diff line number Diff line Loading @@ -620,6 +620,23 @@ 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 "--fail-early" Fail and exit on first detected error. When curl is used to do multiple transfers on the command line, it will attempt to operate on each given URL, one by one. By default, it will ignore errors if there are more URLs given and the last URL's success will determine the error code curl returns. So early failures will be "hidden" by subsequent successful transfers. Using this option, curl will instead return an error on the first transfers that fails, independent on the amount of more URLs that are given on the command line. This way, no transfer failures go undetected by scripts and similar. This option will apply for all given URLs even if you use \fI--next\fP. (Added in 7.52.0) .IP "--false-start" (SSL) Tells curl to use false start during the TLS handshake. False start is a Loading src/tool_cfgable.h +1 −1 Original line number Diff line number Diff line Loading @@ -239,7 +239,7 @@ struct GlobalConfig { bool tracetime; /* include timestamp? */ int progressmode; /* CURL_PROGRESS_BAR / CURL_PROGRESS_STATS */ char *libcurl; /* Output libcurl code to this file name */ bool fail_early; /* exit on first transfer error */ struct OperationConfig *first; struct OperationConfig *current; struct OperationConfig *last; /* Always last in the struct */ Loading src/tool_getparam.c +9 −2 Original line number Diff line number Diff line Loading @@ -231,6 +231,7 @@ static const struct LongShort aliases[]= { {"Es", "ssl-no-revoke", FALSE}, {"Et", "tcp-fastopen", FALSE}, {"f", "fail", FALSE}, {"fa", "fail-early", FALSE}, {"F", "form", TRUE}, {"Fs", "form-string", TRUE}, {"g", "globoff", FALSE}, Loading Loading @@ -1438,8 +1439,14 @@ ParameterError getparameter(char *flag, /* f or -long-flag */ } break; case 'f': switch(subletter) { case 'a': /* --fail-early */ global->fail_early = toggle; break; default: /* fail hard on errors */ config->failonerror = toggle; } break; case 'F': /* "form data" simulation, this is a little advanced so lets do our best Loading src/tool_operate.c +2 −2 Original line number Diff line number Diff line Loading @@ -1805,9 +1805,9 @@ static CURLcode operate_do(struct GlobalConfig *global, urlnode->flags = 0; /* ** Bail out upon critical errors ** Bail out upon critical errors or --fail-early */ if(is_fatal_error(result)) if(is_fatal_error(result) || (result && global->fail_early)) goto quit_curl; } /* for-loop through all URLs */ Loading tests/data/Makefile.inc +1 −1 Original line number Diff line number Diff line Loading @@ -127,7 +127,7 @@ test1216 test1217 test1218 test1219 \ test1220 test1221 test1222 test1223 test1224 test1225 test1226 test1227 \ test1228 test1229 test1230 test1231 test1232 test1233 test1234 test1235 \ test1236 test1237 test1238 test1239 test1240 test1241 test1242 test1243 \ test1244 test1245 test1246 \ test1244 test1245 test1246 test1247 \ \ test1300 test1301 test1302 test1303 test1304 test1305 test1306 test1307 \ test1308 test1309 test1310 test1311 test1312 test1313 test1314 test1315 \ Loading Loading
docs/curl.1 +17 −0 Original line number Diff line number Diff line Loading @@ -620,6 +620,23 @@ 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 "--fail-early" Fail and exit on first detected error. When curl is used to do multiple transfers on the command line, it will attempt to operate on each given URL, one by one. By default, it will ignore errors if there are more URLs given and the last URL's success will determine the error code curl returns. So early failures will be "hidden" by subsequent successful transfers. Using this option, curl will instead return an error on the first transfers that fails, independent on the amount of more URLs that are given on the command line. This way, no transfer failures go undetected by scripts and similar. This option will apply for all given URLs even if you use \fI--next\fP. (Added in 7.52.0) .IP "--false-start" (SSL) Tells curl to use false start during the TLS handshake. False start is a Loading
src/tool_cfgable.h +1 −1 Original line number Diff line number Diff line Loading @@ -239,7 +239,7 @@ struct GlobalConfig { bool tracetime; /* include timestamp? */ int progressmode; /* CURL_PROGRESS_BAR / CURL_PROGRESS_STATS */ char *libcurl; /* Output libcurl code to this file name */ bool fail_early; /* exit on first transfer error */ struct OperationConfig *first; struct OperationConfig *current; struct OperationConfig *last; /* Always last in the struct */ Loading
src/tool_getparam.c +9 −2 Original line number Diff line number Diff line Loading @@ -231,6 +231,7 @@ static const struct LongShort aliases[]= { {"Es", "ssl-no-revoke", FALSE}, {"Et", "tcp-fastopen", FALSE}, {"f", "fail", FALSE}, {"fa", "fail-early", FALSE}, {"F", "form", TRUE}, {"Fs", "form-string", TRUE}, {"g", "globoff", FALSE}, Loading Loading @@ -1438,8 +1439,14 @@ ParameterError getparameter(char *flag, /* f or -long-flag */ } break; case 'f': switch(subletter) { case 'a': /* --fail-early */ global->fail_early = toggle; break; default: /* fail hard on errors */ config->failonerror = toggle; } break; case 'F': /* "form data" simulation, this is a little advanced so lets do our best Loading
src/tool_operate.c +2 −2 Original line number Diff line number Diff line Loading @@ -1805,9 +1805,9 @@ static CURLcode operate_do(struct GlobalConfig *global, urlnode->flags = 0; /* ** Bail out upon critical errors ** Bail out upon critical errors or --fail-early */ if(is_fatal_error(result)) if(is_fatal_error(result) || (result && global->fail_early)) goto quit_curl; } /* for-loop through all URLs */ Loading
tests/data/Makefile.inc +1 −1 Original line number Diff line number Diff line Loading @@ -127,7 +127,7 @@ test1216 test1217 test1218 test1219 \ test1220 test1221 test1222 test1223 test1224 test1225 test1226 test1227 \ test1228 test1229 test1230 test1231 test1232 test1233 test1234 test1235 \ test1236 test1237 test1238 test1239 test1240 test1241 test1242 test1243 \ test1244 test1245 test1246 \ test1244 test1245 test1246 test1247 \ \ test1300 test1301 test1302 test1303 test1304 test1305 test1306 test1307 \ test1308 test1309 test1310 test1311 test1312 test1313 test1314 test1315 \ Loading