64,646
社区成员
发帖
与我相关
我的任务
分享
#include "unp.h"
#include <time.h>
int main(int argc , char ** argv)
{
int listenfd , connfd;
struct sockaddr_in servaddr;
char buff[MAXLINE];
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(13);
bind(listenfd , (SA *)&servaddr , sizeof(servaddr));
listen(listenfd , LISTENQ);
while(1)
{
connfd = accept(listenfd , (SA *)NULL , NULL);
ticks = time(NULL);
snprintf(buff , sizeof(buff) , "%.24s\r\n",ctime(&ticks));
write(connfd , buff , strlen(buff));
close(connfd);
}
return 0;
}
#include "unp.h"
int main(int argc , char ** argv)
{
int sockfd , n;
char recvline[MAXLINE + 1];
struct sockaddr_in servaddr;
if(argc != 2)
{
err_quit("usage: a.out <IPaddress>");
}
if( (sockfd = socket(AF_INET , SOCK_STREAM , 0) ) < 0)
{
err_sys("socket error");
}
bzero(&servaddr , sizeof(servaddr));
servaddr.sin_family = AF_INET;
servaddr.sin_port = htons(13);
if(inet_pton(AF_INET , argv[1] , &servaddr.sin_addr) <= 0)
{
err_quit("inet_pton error for %s",argv[1]);
}
if(connect(sockfd , (SA*)&servaddr , sizeof(servaddr)) < 0)
{
err_sys("connect error");
}
while( ( n = read(sockfd , recvline , MAXLINE)) > 0)
{
recvline[n] = 0;
if(fputs(recvline , stdout) == EOF)
{
err_sys("fputs error");
}
}
if(n < 0)
{
err_sys("fputs error");
}
return 0;
}