Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
什么时候应该从FTP服务器发送226?_Ftp_Ftp Server - Fatal编程技术网

什么时候应该从FTP服务器发送226?

什么时候应该从FTP服务器发送226?,ftp,ftp-server,Ftp,Ftp Server,我正在Qt中创建一个FTP服务器,我不确定何时发送RETR命令的226成功响应代码 是否在写入所有数据后,但在关闭数据连接套接字之前发送: reply(226); dataSocket()->disconnectFromHost(); dataSocket()->disconnectFromHost(); dataSocket()->waitForDisconnected(); reply(226); 还是在数据连接套接字关闭后发送:

我正在Qt中创建一个FTP服务器,我不确定何时发送RETR命令的226成功响应代码

是否在写入所有数据后,但在关闭数据连接套接字之前发送:

    reply(226);
    dataSocket()->disconnectFromHost();
    dataSocket()->disconnectFromHost();
    dataSocket()->waitForDisconnected();
    reply(226);
还是在数据连接套接字关闭后发送:

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

为了防止这里出现竞争情况,服务器在关闭数据连接后发送应答(226)


谢谢我认为需要
waitForDisconnected
,否则套接字可能尚未关闭,因为
disconnectFromHost
是异步的。@satuon:在这种情况下,是的;我对你使用的框架一无所知,所以没有考虑。