linux ftp服务源代码,linux下最简单的ftpget ftpput 源代码

/*FtpGetRun*/

#include

#include

#include

#include

#include

#include

#include

#include

#include

/*FtpGetRun Variable*/

FILE *pFtpIOFile = NULL;

FILE *pFileCmdChmod; //使用popen方式修改文件属性为可执行的文件指针

FILE *pRunGetFile; //使用popen方式执行文件的文件指针

char aFtpBuffer[4096];

/*Http Variable*/

FILE *pFileCmdChmod;

FILE *pRunGetFile;

char aRequestHead[1000];

char aResponseHead[1000];

static int iSockHttpMark=-1;

int iGetRunMark;//用来标记是get模式,还是getrun模式1为get模式,2为getrun模式

char acChmodCmd[50];//用来使用chmode命令行

char acRunCmdLine[50];//用来运行程序

int FtpCmd(int iSockFtpCmd,char *cFmt,...)

{

va_list vVaStartUse;

int iFtpCmdReturn;

int iFtpLength;

if (pFtpIOFile == NULL)

{

pFtpIOFile = fdopen(iSockFtpCmd,"r");

if (pFtpIOFile == NULL)

{

printf("The ERROR of pointer of pFtpIOFile");

return -1;

}

}

if (cFmt)

{

va_start(vVaStartUse,cFmt);

iFtpLength = vsprintf(aFtpBuffer,cFmt,vVaStartUse);

aFtpBuffer[iFtpLength++] = '\r';

aFtpBuffer[iFtpLength++]='\n';

write(iSockFtpCmd,aFtpBuffer,iFtpLength); //如同send

}

do

{

if (fgets(aFtpBuffer,sizeof(aFtpBuffer),pFtpIOFile) == NULL)

{

return -1;

}

} while(aFtpBuffer[3] == '-');

sscanf(aFtpBuffer,"%d",&iFtpCmdReturn);

return iFtpCmdReturn;

}

int FtpGet(char *host,char *user,char *pass,char *filename,ch

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值