Professional Documents
Culture Documents
CN Sessional Name: Ayan Banerjee Roll No.:1906470 Client
CN Sessional Name: Ayan Banerjee Roll No.:1906470 Client
Client:
#include<stdio.h>
#include<stdlib.h>
#include<sys/socket.h>
#include<sys/types.h>
#include<arpa/inet.h>
#include<netinet/in.h>
#include<unistd.h>
int main(){
connectToServer();
char buffer;
printf("Enter a char. : ");
scanf("%c",&buffer);
send(mySocket, &buffer, sizeof(buffer), 0);
closeConnection();
return 0;
}
void connectToServer(){
if((mySocket = socket(AF_INET, SOCK_STREAM, 0)) == -1){
printf("socket() error!\n");
exit(-1);
}
printf("Socket created successfully!\n");
clientAddress.sin_family = AF_INET;
clientAddress.sin_port = htons(MYPORT);
clientAddress.sin_addr.s_addr = INADDR_ANY;
void closeConnection(){
close(mySocket);
printf("\n*** Connection closed! ***\n\n");
return;
}
Server:
#include<stdio.h>
#include<stdlib.h>
#include<sys/socket.h>
#include<sys/types.h>
#include<arpa/inet.h>
#include<netinet/in.h>
#include<unistd.h>
int main(){
char buffer[5];
connectToClient();
for(int i=0; i<4; ++i){
if(listen(serverSocket, 2) == -1){
printf("listen() error!\n");
exit(-1);
}
// printf("Listening at port %d for connection request...\n",MYPORT);
int length = sizeof(clientAddress);
if((clientSocket = accept(serverSocket, (struct sockaddr*)&clientAddress,
(socklen_t*)&length)) == -1){
printf("accept() error!\n");
exit(-1);
}
// printf("Connection request accepted from client #%d!\n",i+1);
char temp;
recv(clientSocket, &temp, sizeof(temp), 0);
buffer[i] = temp;
printf("Data received from client !");
}
buffer[5] = '\0';
//connectToClient();
if(listen(serverSocket, 2) == -1){
printf("listen() error!\n");
exit(-1);
}
// printf("Listening at port %d for connection request...\n",MYPORT);
void connectToClient(){
if((serverSocket = socket(AF_INET, SOCK_STREAM, 0)) == -1){
printf("socket() error!\n");
exit(-1);
}
// printf("Socket created successfully!\n");
serverAddress.sin_family = AF_INET;
serverAddress.sin_port = htons(MYPORT);
serverAddress.sin_addr.s_addr = INADDR_ANY;
return;
}
void closeConnection(){
close(serverSocket);
close(clientSocket);
// printf("\n*** Connection closed! ***\n\n");
return;
}
Output :
Packet tracer :