Currently, the timeout when waiting for packages is smaller than the timeout communicated to the TFTP server for retransmitting. Make sure we wait at least for two retransmissions before giving up.
Signed-off-by: Wolfram Sang <w.s...@pengutronix.de> --- net/tftp.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/net/tftp.c b/net/tftp.c index ca12638..053b8f3 100644 --- a/net/tftp.c +++ b/net/tftp.c @@ -354,7 +354,8 @@ static int do_tftpb(int argc, char *argv[]) tftp_retries++; } - if (tftp_retries > PKT_NUM_RETRIES) { + /* Wait for two TIMEOUT periods and add some */ + if (tftp_retries > 2 * TIMEOUT + 1) { tftp_err = -ETIMEDOUT; break; } -- 1.7.10.4 _______________________________________________ barebox mailing list barebox@lists.infradead.org http://lists.infradead.org/mailman/listinfo/barebox