u-boot/include/net
Mikhail Kshevetskiy bf962de97c net/tcp: improve tcp framework, use better state machine
Changes:
 * Fix initial send sequence always zero issue
 * Use state machine close to RFC 9293. This should make TCP
   transfers more reliable (now we can upload a huge array
   of data from the board to external server)
 * Improve TCP framework a lot. This should make tcp client
   code much more simple.
 * rewrite wget with new tcp stack
 * rewrite fastboot_tcp with new tcp stack

It's quite hard to fix the initial send sequence (ISS) issue
with the separate patch. A naive attempt to fix an issue
inside the tcp_set_tcp_header() function will break tcp packet
retransmit logic in wget and other clients.

Example:
  Wget stores tcp_seq_num value before tcp_set_tcp_header() will
  be called and (on failure) retransmit the packet with the stored
  tcp_seq_num value. Thus:
    * the same ISS must allways be used (current case)
    * or tcp clients needs to generate a proper ISS when
      required.

A proper ISS fix will require a big redesing comparable with
a this one.

Signed-off-by: Mikhail Kshevetskiy <mikhail.kshevetskiy@iopsys.eu>
Reviewed-by: Simon Glass <sjg@chromium.org>
2024-12-28 11:59:42 -06:00
..
pfe_eth
dsa.h doc: replace @return by Return: 2022-01-19 18:11:34 +01:00
fastboot_tcp.h net: add fastboot TCP support 2023-05-05 17:48:44 -04:00
fastboot_udp.h net: add fastboot TCP support 2023-05-05 17:48:44 -04:00
ldpaa_eth.h drivers: net: ldpaa: export driver name and API to get DPMAC id 2023-05-05 13:41:55 -04:00
ncsi-pkt.h
ncsi.h include: Drop <common.h> from include lists 2023-11-07 14:50:52 -05:00
pcap.h doc: replace @return by Return: 2022-01-19 18:11:34 +01:00
sntp.h include: net: Remove duplicate newlines 2024-07-29 15:01:04 -06:00
tcp.h net/tcp: improve tcp framework, use better state machine 2024-12-28 11:59:42 -06:00
tftp.h
udp.h
wget.h net/tcp: improve tcp framework, use better state machine 2024-12-28 11:59:42 -06:00