From 5dafef6aaf81d96f92eff3365f62f18fe89b3136 Mon Sep 17 00:00:00 2001 From: Christoph Fritz Date: Wed, 30 Apr 2014 10:32:01 +0200 Subject: [PATCH] tftp: add timeframe when remote server is retransmitting If there's packet loss and the remote server needs to retransmit, there is falsely no timeframe left because TIMEOUT (server wait time) and TFTP_TIMEOUT (abort timer) are the same. This patch increases TFTP_TIMEOUT. See RFC2349 for more info: http://tools.ietf.org/html/rfc2349 Signed-off-by: Christoph Fritz Signed-off-by: Sascha Hauer --- fs/tftp.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/fs/tftp.c b/fs/tftp.c index 9cad18fe8..b1a213ec1 100644 --- a/fs/tftp.c +++ b/fs/tftp.c @@ -33,14 +33,16 @@ #include #include -#define TFTP_PORT 69 /* Well known TFTP port # */ -#define TIMEOUT 5 /* Seconds to timeout for a lost pkt */ +#define TFTP_PORT 69 /* Well known TFTP port number */ + +/* Seconds to wait before remote server is allowed to resend a lost packet */ +#define TIMEOUT 5 /* After this time without a response from the server we will resend a packet */ #define TFTP_RESEND_TIMEOUT SECOND /* After this time without progress we will bail out */ -#define TFTP_TIMEOUT (TIMEOUT * SECOND) +#define TFTP_TIMEOUT ((TIMEOUT * 3) * SECOND) /* * TFTP operations.