From: Yasuharu Shibata Date: Tue, 16 Apr 2024 00:26:24 +0000 (+0900) Subject: net: wget: fix TCP sequence number wrap around issue X-Git-Url: http://git.dujemihanovic.xyz/?a=commitdiff_plain;h=beac9581531d7882df8c1de653db18fb3ab4100a;p=u-boot.git net: wget: fix TCP sequence number wrap around issue If tcp_seq_num is wrap around, tcp_seq_num >= initial_data_seq_num isn't satisfied and store_block() isn't called. The condition has a wrap around issue, so it is fixed in this patch. Signed-off-by: Yasuharu Shibata Reviewed-by: Michael Trimarchi Suggested-by: Michael Trimarchi Reported-by: Tim Harvey Tested-by: Fabio Estevam --- diff --git a/net/wget.c b/net/wget.c index 71bac92d84..abab371e58 100644 --- a/net/wget.c +++ b/net/wget.c @@ -404,9 +404,7 @@ static void wget_handler(uchar *pkt, u16 dport, } next_data_seq_num = tcp_seq_num + len; - if (tcp_seq_num >= initial_data_seq_num && - store_block(pkt, tcp_seq_num - initial_data_seq_num, - len) != 0) { + if (store_block(pkt, tcp_seq_num - initial_data_seq_num, len) != 0) { wget_fail("wget: store error\n", tcp_seq_num, tcp_ack_num, action); net_set_state(NETLOOP_FAIL);