RT-Thread-packages / wiznet

WIZnet TCP/IP chips (such as W5500/W5100..) SAL framework implement.
Apache License 2.0
49 stars 35 forks source link

[HUST_CSE]Close the TCP connection in the fourth wave(wiznet/src/wiz_socket.c#L206#L514) #72

Closed k4kkk closed 1 year ago

k4kkk commented 1 year ago

为什么提交这份PR(why to submit this PR)

issue的地址FTP协议中数据连接是:通过关闭连接动作被客户感知到操作完毕的。
根据W5500的操作手册下的说明:  W5500进行四次握手后必须关闭Sn_CR寄存器DICON位,直接设置CLOSE位会使 Sn_SR改为SOCK_CLOSED,不再执行FIN/ACK断开机制,导致TCP连接没有完全断开。 这会使得对流程有要求的协议如FTP出现问题。

你的解决方案是什么 (what is your solution)

当需要断开TCP连接时: 我们就设置寄存器为DISCON位,需要调用wizchip_disconnect函数; 而在执行其他功能时候,任然调用wizchip_close函数

在什么测试环境下测试通过 (what is the test environment)

ALL

mysterywolf commented 1 year ago

感谢提交PR review中

k4kkk commented 1 year ago

感谢提交PR review中

您好,我想了解关于review的进度 @mysterywolf