Sei sulla pagina 1di 5

Server.

#include<stdio.h>

#include<arpa/inet.h>

#include<netinet/in.h>

#include<netdb.h>

#include<sys/socket.h>

#include<netinet/in.h>

#define SERV_TCP_PORT 5019

int main()

int i;

int sockfd,newsockfd,clength;

struct sockaddr_in serv_addr,cli_addr;

char buffer[4096];

char buf[5000];

int i=fork()

sockfd=socket(AF_INET,SOCK_STREAM,0);

if(sockfd==-1)

printf("could not create socket");

else

printf("created socket");
}

serv_addr.sin_family=AF_INET;

serv_addr.sin_addr.s_addr=INADDR_ANY;

serv_addr.sin_port=htons(SERV_TCP_PORT);

printf("Start\n");

if(bind(sockfd,(struct sockaddr*)&serv_addr,sizeof(serv_addr))<0)

printf("bind() unable to create\n");

else

printf("listening\n");

printf("\n");

listen(sockfd,5);

clength=sizeof(cli_addr);

newsockfd=accept(sockfd,(struct sockaddr*)&cli_addr,&clength);

printf("client socket fd id is: %d\n",newsockfd);

printf("Accepted\n");

printf("\n");

for(i=0;i<3;i++)

read(newsockfd,buffer,sizeof(buffer));

printf("\nClient message is %s",buffer);

printf("\nenter msg\n");

scanf("%s",buf);

write(newsockfd,buf,sizeof(buf));

//printf("\nClient message is %s",buffer);


printf("\n");

printf("\n%s\n%d\n%s\n",inet_ntoa(cli_addr.sin_addr),ntohs(cli_addr.sin_port),buffer);

close(sockfd);

return 0;

Output:

created socketStart

listening

client socket fd id is: 4

Accepted

Client message is hienter msghello

Client message is ▒enter msgbuffer

Client message is byeenter msgbyweww

172.20.0.7
58476

Bye

Client.c

#include<stdio.h>

#include<sys/socket.h>

#include<netinet/in.h>

#include<netdb.h>

#define SERV_TCP_PORT 5019

int main()

int sockfd;

int i;

struct sockaddr_in serv_addr;

struct hostent *server;

char buffer[5000];

char buf[4096];

sockfd=socket(AF_INET,SOCK_STREAM,0);

serv_addr.sin_family=AF_INET;

serv_addr.sin_addr.s_addr=inet_addr("172.20.0.7");

serv_addr.sin_port=htons(SERV_TCP_PORT);

printf("Ready for sending\n");

connect(sockfd,(struct sockaddr*)&serv_addr,sizeof(serv_addr));

printf("Client connected\n");

for(i=0;i<3;i++)

{
printf("\nenter msg from client\n");

scanf("%s",buffer);

write(sockfd,buffer,sizeof(buffer));

read(sockfd,buf,sizeof(buf));

printf("\nServer message is %s",buf);

printf("\n");

close(sockfd);

return 0;

Output:

Ready for sending

Client connected

enter msg from clienthi

Server message is helloenter msg from clientbye

Server message is enter msg from clientasdf

Server message is buffer

Potrebbero piacerti anche