QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1092|回复: 1

ftp客户端实现的问题

[复制链接]
发表于 2006-7-3 21:25:57 | 显示全部楼层 |阅读模式
按照rfc的ftp文档,用socket编了个ftp客户端的程序,但是文件下载时总是不对,希望各位多指教或给段源码。

           ....
str = "PASV\r\n";
sendcmd(sock_ftp, str);
//数据连接
sock_data = socket(AF_INET, SOCK_STREAM, 0);

server_addr.sin_family = AF_INET;
server_addr.sin_port = htons(dataport);
server_addr.sin_addr.s_addr = inet_addr(SERVER_ADDR);
bzero(&(server_addr.sin_zero),;

result = connect(sock_data, (struct sockaddr*)&server_addr, sizeof(struct sockaddr));   //连接没有问题


str = "RETR ee.doc\r\n";
sendcmd(sock_ftp, str);
result = recv(sock_data, buf, MAX_DATASIZE, 0);
printf("%s\n",buf);
       //返回值是150,但是下面我就不知道怎么做了,改了几次都不行
       //各位帮忙看看,是不是我上面的步骤错了,给个流程提示
while(result > 0);
{
fd=open("/home/mars/ee.doc", O_WRONLY | O_CREAT);
write(fd, buf ,sizeof(buf));
result = recv(sock_data, buf, MAX_DATASIZE, 0);
printf("%s\n",buf);
}
发表于 2006-7-3 22:51:08 | 显示全部楼层
fd=open("/home/mars/ee.doc", O_WRONLY | O_CREAT); 放的位置不对
其他的没看。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-2 12:31 , Processed in 0.036582 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表