博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《UNIX网络编程》 1
阅读量:6643 次
发布时间:2019-06-25

本文共 1733 字,大约阅读时间需要 5 分钟。

1、安装 daytime 服务:

apt-get install xinetd

chmod 777 /etc/xinetd.d/daytime

vim /etc/xinetd.d/daytime

把两个 disable = yes ,改成 disable = no

/etc/init.d/xinetd restart

 

2、timeserver.cpp:

#include 
#include
#include
#include
#include
#define LISTENQ 1024int main(int argc, char** argv){ int listenfd,connfd; sockaddr_in servaddr; char buff[1024]; time_t ticks; listenfd = socket(AF_INET,SOCK_STREAM,0); bzero(&servaddr,sizeof(servaddr)); servaddr.sin_family = AF_INET; servaddr.sin_addr.s_addr = htonl(INADDR_ANY); servaddr.sin_port = htons(2013); bind(listenfd,(sockaddr*)&servaddr,sizeof(servaddr)); listen(listenfd,LISTENQ); for(;;) { connfd = accept(listenfd,(sockaddr*)NULL,NULL); ticks = time(NULL); snprintf(buff,sizeof(buff),"%.24s\r\n",ctime(&ticks)); write(connfd,buff,strlen(buff)); //#include
close(connfd); } }

 

3、timeclient.cpp:

#include 
#include
#include
#include
#include
int main(int argc, char **argv){ int sockfd,n; char recvline[1024]; sockaddr_in servaddr; //#include
if(argc != 2) { std::cout<<"usage: a.out
"<
< 0) //#include
{ std::cout<<"socket error."<
servaddr.sin_family = AF_INET; servaddr.sin_port = htons(2013); if(inet_pton(AF_INET,argv[1],&servaddr.sin_addr) <= 0) // #include
{ std::cout<<"inet_pton error"<
0) { recvline[n] = 0; if(fputs(recvline, stdout) == EOF) //#include
{ std::cout<<"fputs error"<

 

转载于:https://www.cnblogs.com/tianyajuanke/archive/2013/05/24/3096991.html

你可能感兴趣的文章
jq查找父类元素三个函数的区别
查看>>
1.27eia原油
查看>>
vue loading 插件编写与实战
查看>>
Linux I/O多路转接之select函数
查看>>
Android深度探索第二章总结
查看>>
matlab练习程序(单源最短路径Bellman-Ford)
查看>>
深入理解Java的接口和抽象类
查看>>
JavaScript 简介
查看>>
随写内部类
查看>>
【WEB】Tomcat基础使用知识
查看>>
rest_framework频率组件
查看>>
计算a+b
查看>>
fopen()函数的使用
查看>>
增量/存量数据按时间维度分组
查看>>
WPF QuickStart系列之样式和模板(Style and Template)
查看>>
应用模型
查看>>
开源项目与许可证
查看>>
深入浅出JSON
查看>>
Servlet的声明周期里究竟怎么做的?
查看>>
有关性能测试协议选择问题
查看>>