linguini1 opened a new pull request, #16456:
URL: https://github.com/apache/nuttx/pull/16456

   ## Summary
   
   The TCP keep-alive implementation would send the probes and abort the 
connection correctly, but without waking up the
   affected socket and marking the connection as aborted. This patch from 
@zhhyu7 in #16447 resolves the issue.
   
   ## Impact
   
   The TCP keep-alive implementation is functional again, users can expect this 
feature to behave properly.
   
   ## Testing
   
   Testing was performed by using two W5500-EVB Picos connected via TCP over a 
network. The client Pico would be powered-off while the server Pico was waiting 
on a blocking `recv`. Before the fix was applied, the server would never wake 
up despite the TCP connection being aborted. The abort mechanism would also 
trigger repeatedly. With this patch, the server Pico is woken up from the 
receive with `errno` set to `ENOTCONN` after the timeout is over.
   
   The code for the test can be seen here:
   * Server: 
https://github.com/CarletonURocketry/hysim/tree/78924ab114c166841417b7e4bc3f4d14ab8ec572/pad_server
   * Client: 
https://github.com/CarletonURocketry/hysim/tree/78924ab114c166841417b7e4bc3f4d14ab8ec572/control_client


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscr...@nuttx.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to