繁体   English   中英

我可以从Delphi的Indy客户端发送TCP RST吗?

[英]Can I send a TCP RST from Delphi's Indy client?

我们一直在尝试使用Delphi Indy(SVN干线)客户端和带有mod_php的Apache。 调用一个PHP脚本,该脚本注册一个关闭功能。

在测试期间,仅在脚本结束并且connection_status()返回零后,才调用此关闭函数。

如果我使用CURL并在脚本执行过程中按Ctrl-C,则CURL发送一个TCP数据包,其RST标志设置为boolean true。 这确实触发了关闭功能,并且connection_status()返回一个。 如果连接超时,则会打开TCP FIN标志,但不会触发关闭功能-实际上,Apache进程进入CLOSE_WAIT,直到PHP脚本执行完毕。 如果使用Indy,唯一设置的标志是FIN。

考虑到所有这些,我们能否使Indy发送RST标志设置为true的TCP数据包? 我们希望在连接超时时执行此操作(解决了我们正在测试的问题)。

另请参见http://uk.php.net/connection_handling

Indy总是尝试优雅地关闭连接,该连接不会发送RST标志。 如果需要,则必须自己强制关闭连接。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM