客户端程序源代码

客户端程序源代码

ID:38184195

大小:28.00 KB

页数:3页

时间:2019-05-24

客户端程序源代码_第1页
客户端程序源代码_第2页
客户端程序源代码_第3页
资源描述:

《客户端程序源代码》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、#include#include#include#include#include#definerec_length20main(intargc,char**argv){//structuredefinedforrequestasaclientstructhostent*hp1;structsockaddr_insin1;structservent*sp1;charsbuf[50];intss,spid;char*sservice

2、,*sdest;//structuredefinedforrequestasaserverstructsockaddr_insin;structservent*sp;ints,ns,pid;charbuf[50];char*service;//testtheenvironmentparameter:lservice,dservice,server_nameif(argc==4){service=argv[1];sservice=argv[2];sdest=argv[3];}else{fprintf(stderr,"Parameterassign

3、edError!Usage:");fprintf(stderr,"t%slservicedserviceserver_name!",argv[0]);fprintf(stderr,"Note:server_nameisdefinedinfile/etc/hosts");fprintf(stderr,"and:lservicedservicearedefinedinfile/etc/services");exit(-1);}if((sp=getservbyname(service,"tcp"))==NULL){fprintf

4、(stderr,"Error:getservbyname");exit(-5);}if((s=socket(AF_INET,SOCK_STREAM,0))==-1){fprintf(stderr,"Error:socketcreate");exit(-6);}bzero(&sin,sizeof(sin));sin.sin_port=sp->s_port;if(bind(s,&sin,sizeof(sin))==-1){fprintf(stderr,"Error:bind");close(s);exit(-6);}if(listen(s,5)==

5、-1){fprintf(stderr,"Error:listen");close(s);exit(-6);}while(1){fprintf(stderr,"tttNowwaitconnect...");if((ns=accept(s,0,0))==-1){//waitaconnection*/fprintf(stderr,"error:accept");continue;}if((pid=fork())==-1){//conneted,andthencreatechildprocfprintf(stderr,"server:fo

6、rkerror!");close(s);exit(-1);}if(pid!=0){//parentproce,nothingtodo,andtothenextloopclose(ns);wait(0);continue;}if(pid==0){//enteredchildproccedureclose(s);printf("Receiveaclientconnect:%s",argv[1]);if(read(ns,buf,rec_length)==0){fprintf(stderr,"Readnothingfromsocket:ns")

7、;close(ns);exit(-3);}printf("%sgetmessagefromns:%s",argv[0],buf);//requestmessagegotfromtheClient.//BegineaConnectiontoServerasaClientif((sp1=getservbyname(sservice,"tcp"))==NULL){fprintf(stderr,"Error:getservbynames1");exit(-5);}if((hp1=gethostbyname(sdest))==0){fprintf(s

8、tderr,"Error:gethostbynames1");exit(-6);}bzero(&sin1,sizeof(sin1));bcopy(hp

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。