[PATCH] net: tftp: timeout only after a proper amount of time

Wolfram Sang w.sang at pengutronix.de
Fri Sep 14 03:50:17 EDT 2012


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.sang at 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




More information about the barebox mailing list