日期:2014-05-16  浏览次数:20785 次

老问题:求LINUX下完全基于SOCK的FTP客户端程序
求LINUX下完全基于SOCK的FTP客户端程序,希望代码比较简单,只是PUT和检查是否PUT成功即可!LINUX带的源码太长,我看不懂!比较着急呀!先谢谢了!

------解决方案--------------------
RETR 改为STOR后
在把下面一段改为读文件写SOCKET
savefd = open(savefile,O_WRONLY|O_CREAT,0644);
if (savefd == -1)
goto out;
retval = 0;
while ((len=read(sockxfer,buf,sizeof(buf)))> 0)
{
write(savefd,buf,len);
retval += len;
};
---------大致如下----------
savefd = open(savefile,O_WRONLY,0644);
while(!feof(savefd ))
{
Length=fread(buff,1,1024,savefd );
Length=send(sockxfer,buff,Length,0);
if (Length == SOCKET_ERROR)
{
cout < < "send file err " < <errno < <endl;
}
}
close(sockxfer);

--------------------------------
记得给我分啊