gpt4 book ai didi

c++ - 编程 ftp : how to abort file transfer?

转载 作者:可可西里 更新时间:2023-11-01 13:30:35 26 4
gpt4 key购买 nike

我正在做小型 ftp 客户端,用于从 ftp 接收一些大文件。我在 RFC 中读到 ABOR 命令对于服务器来说是非常有问题的。即使在通过控制连接发送 ABOR 之后,我看到的几乎所有服务器都只是继续发送数据。关闭数据传输也会导致(在 70% 的测试中)关闭控制连接。服务器只是在我推送 ABOR 数据包后发送 FIN 数据包。停止接收某个字节并且不丢失控制连接的最佳方法是什么? FlashFXP 在所有类型的连接延迟和服务器上都可以正常工作。在调查 tcp 流量时,我发现了标准的 ftp rfc 流。

但就我而言,使用这种技术仍然无法成功中止传输:

1) 关机(passive_socket, SD_BOTH)

2) 关闭套接字(passive_socket);

3) 发送(control_socket,"ABOR\r\n")

4) recv(control_socket) - 停在这里

谢谢

最佳答案

“ABOR\r\n”命令应作为带外数据发送。如果是 send() -

send(control_socket, "ABOR\r\n", 6, MSG_OOB);

一段时间后 recv() 代码 426 传输中止。数据连接已关闭。

如果您无法成功中止转移,以下链接更有帮助:http://www.developer.nokia.com/Community/Discussion/showthread.php?134079-Telnet-quot-Interrupt-Process-quot-(IP)-signal-amp-Telnet-quot-Synch-quot

关于c++ - 编程 ftp : how to abort file transfer?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6457207/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com