我必须编写一个 FTP 服务器,但我对如何传输数据有疑问。
我在 linux 上使用ftp命令来测试它,我目前正在处理LIST
,它发送工作目录中的文件/目录列表。一切正常(ftp 可以很好地打印文件列表),除了ftp打印以下警告:
WARNING! 5 bare linefeeds received in ASCII mode
File may not have transferred correctly.
我想删除该警告,我认为ftp需要二进制数据,但我不知道如何通过套接字发送这样的数据,我目前正在做最基本的发送ls
结果的方法:
dup2(dst_channel, 1);
execlp("ls", "ls", "-l", NULL);