mirror of
https://github.com/zephyrproject-rtos/zephyr
synced 2025-09-02 07:02:20 +00:00
Handle this corner case with TCP connection closing: 1) Client A connects, it is accepted and can send data to us 2) Client B connects, the application needs to call accept() before we will receive any data from client A to the application. The app has not yet called accept() at this point (for whatever reason). 3) Client B then disconnects and we receive FIN. The connection cleanup is a bit tricky as the client is in half-connected state meaning that the connection is in established state but the accept_q in socket queue contains still data which needs to be cleared. 4) Client A then disconnects, all data is sent etc The above was not working correctly as the system did not handle the step 3) properly. The client B was accepted in the application even if the connection was closing. After this commit, the commit called "net: tcp: Accept connections only in LISTENING state" and related other commits are no longer needed and are reverted. Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com> |
||
---|---|---|
.. | ||
coap | ||
config | ||
conn_mgr | ||
dns | ||
http | ||
lwm2m | ||
mqtt | ||
openthread | ||
sntp | ||
sockets | ||
socks | ||
tls_credentials | ||
utils | ||
websocket | ||
CMakeLists.txt | ||
Kconfig |