2

Qt で FTP サーバーを作成していますが、RETR コマンドの 226 成功応答コードを送信するタイミングがわかりません。

すべてのデータが書き込まれた後、データ接続ソケットが閉じられる前に送信しますか?

    reply(226);
    dataSocket()->disconnectFromHost();

または、データ接続ソケットが閉じられた後に送信しますか?

    dataSocket()->disconnectFromHost();
    dataSocket()->waitForDisconnected();
    reply(226);
4

1 に答える 1

2

http://www.ietf.org/rfc/rfc959.txt

ここでの競合状態を防ぐために、サーバーはデータ接続を閉じた後に応答(226)を送信します。

于 2012-12-09T07:47:56.113 に答える