tftp: default timeout per block is now 15 seconds

Down from the previous (rather ridiculous) 3600.

Reported-by: Joshua Rogers
Closes #18893
This commit is contained in:
Daniel Stenberg 2025-10-06 17:32:50 +02:00
parent f1ed50a517
commit bc90f80556
No known key found for this signature in database
GPG key ID: 5CC908FDB71E12C2

View file

@ -206,7 +206,7 @@ const struct Curl_handler Curl_handler_tftp = {
**********************************************************/
static CURLcode tftp_set_timeouts(struct tftp_conn *state)
{
time_t maxtime, timeout;
time_t timeout;
timediff_t timeout_ms;
bool start = (state->state == TFTP_STATE_START);
@ -219,13 +219,11 @@ static CURLcode tftp_set_timeouts(struct tftp_conn *state)
return CURLE_OPERATION_TIMEDOUT;
}
if(timeout_ms > 0)
maxtime = (time_t)(timeout_ms + 500) / 1000;
else
maxtime = 3600; /* use for calculating block timeouts */
/* Set per-block timeout to total */
timeout = maxtime;
if(timeout_ms > 0)
timeout = (time_t)(timeout_ms + 500) / 1000;
else
timeout = 15;
/* Average reposting an ACK after 5 seconds */
state->retry_max = (int)timeout/5;