簡體   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