[U-Boot] [PATCH v3 1/9] net: Revert "tftp: adjust settings to be suitable for 100Mbit ethernet"
Heiko Schocher
hs at denx.de
Tue Sep 8 11:23:33 CEST 2015
Hello Bin,
Am 28.08.2015 um 07:25 schrieb Bin Meng:
> Commit 620776d "tftp: adjust settings to be suitable for 100Mbit ethernet"
> causes the following error message when trying to load a file using 'tftp'
> command via a tftp server.
>
> TFTP error: 'Unsupported option(s) requested' (8)
>
> This is due to with commit 620776d changes, the tftp option 'timeout'
> value is now set to zero which is an invalid value as per RFC2349 [1].
> Valid values range between "1" and "255" seconds, inclusive. With some
> tftp servers that strictly implement the RFC requirement, it reports
> such an error message.
>
> Revert commit 620776d for RFC compliance.
>
> [1] https://www.ietf.org/rfc/rfc2349.txt
>
> Signed-off-by: Bin Meng <bmeng.cn at gmail.com>
> Acked-by: Joe Hershberger <joe.hershberger at ni.com>
Just tried current mainline on the smartweb board, and had the
same issue. Your patch fixed it, thanks!
Tested-by: Heiko Schocher <hs at denx.de>
bye,
Heiko
>
> ---
>
> Changes in v3:
> - Drop e1000 build warning patch which is already applied
>
> Changes in v2:
> - Rewrite the commit message to mention RFC2349
>
> net/tftp.c | 10 +++++-----
> 1 file changed, 5 insertions(+), 5 deletions(-)
>
> diff --git a/net/tftp.c b/net/tftp.c
> index 18ce84c..89be32a 100644
> --- a/net/tftp.c
> +++ b/net/tftp.c
> @@ -19,10 +19,10 @@
> /* Well known TFTP port # */
> #define WELL_KNOWN_PORT 69
> /* Millisecs to timeout for lost pkt */
> -#define TIMEOUT 100UL
> +#define TIMEOUT 5000UL
> #ifndef CONFIG_NET_RETRY_COUNT
> /* # of timeouts before giving up */
> -# define TIMEOUT_COUNT 1000
> +# define TIMEOUT_COUNT 10
> #else
> # define TIMEOUT_COUNT (CONFIG_NET_RETRY_COUNT * 2)
> #endif
> @@ -711,10 +711,10 @@ void tftp_start(enum proto_t protocol)
> if (ep != NULL)
> timeout_ms = simple_strtol(ep, NULL, 10);
>
> - if (timeout_ms < 10) {
> - printf("TFTP timeout (%ld ms) too low, set min = 10 ms\n",
> + if (timeout_ms < 1000) {
> + printf("TFTP timeout (%ld ms) too low, set min = 1000 ms\n",
> timeout_ms);
> - timeout_ms = 10;
> + timeout_ms = 1000;
> }
>
> debug("TFTP blocksize = %i, timeout = %ld ms\n",
>
--
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
More information about the U-Boot
mailing list