From a67efb721f4839a8556e6d880893b76f3f6a4865 Mon Sep 17 00:00:00 2001 From: reiyawea Date: Sat, 26 Sep 2020 11:33:20 +0800 Subject: [PATCH] Update socket.c Change to "disconnect()" so as to reply FIN flag after receiving a FIN flag. Otherwise no FIN will be sent and the peer gets stuck in FIN_WAIT_2. --- Ethernet/socket.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Ethernet/socket.c b/Ethernet/socket.c index 412a65d..e746090 100644 --- a/Ethernet/socket.c +++ b/Ethernet/socket.c @@ -417,7 +417,7 @@ int32_t recv(uint8_t sn, uint8_t * buf, uint16_t len) if(recvsize != 0) break; else if(getSn_TX_FSR(sn) == getSn_TxMAX(sn)) { - close(sn); + disconnect(sn); return SOCKERR_SOCKSTATUS; } }