Timserver 1
Timserver 1
#include<stdio.h>
#include<string.h>
#include<sys/socket.h>
#include<sys/types.h>
#include<netinet/in.h>
#include<arpa/inet.h>
#include<fcntl.h>
#include<stdlib.h>
#include<time.h>
servaddr.sin_port = htons(2000);
servaddr.sin_addr.s_addr = htonl(INADDR_ANY);
if(bind(sock_fd, (struct sockaddr*)&servaddr, sizeof(servaddr)) < 0)
{
perror("bind failed:");
}
while(1)
{
n = recvfrom(sock_fd,buffer , sizeof(buffer), 0, (struct sockaddr *)&cliaddr, &len);
buffer[n]='\0';
//printf("\n command received:%s", buffer);
puts("\n command received");puts(buffer);
if(strcmp(buffer,"time")==0)
{
time(&curtime);
sprintf( buffer, "= %s", ctime(&curtime));
n = sendto(sock_fd, buffer, sizeof(buffer),0, (struct sockaddr*)&cliaddr, sizeof(cliaddr));
if( n < 0)
{
perror("error in sending");
}
}
else {
strcpy(buffer,"Unknown command");
n = sendto(sock_fd, buffer, sizeof(buffer),0, (struct sockaddr*)&cliaddr, sizeof(cliaddr));
}
}
}
//client
#include<stdio.h>
#include<string.h>
#include<sys/socket.h>
#include<sys/types.h>
#include<netinet/in.h>
#include<arpa/inet.h>
#include<fcntl.h>
#include<stdlib.h>