Create Clinet/Server Connection using C programming
#include <stdio.h>
#include <stdlib.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <string.h>
#include <unistd.h>
int main(){
int sock_desc, new_sock;
struct sockaddr_in server, client;
int addrlen = sizeof(server);
char buffer[1024] = {0};
sock_desc = socket(AF_INET, SOCK_STREAM, 0);
if(sock_desc == 0){
perror("Socked Failed");
exit(EXIT_FAILURE);
}
printf("Socket Created!\n");
server.sin_family = AF_INET;
server.sin_addr.s_addr = INADDR_ANY;
server.sin_port = htons(8181);
int conn = bind(sock_desc,
(struct sockaddr *) &server,
sizeof(server));
if(conn < 0){
perror("Bind Failed!\n");
exit(EXIT_FAILURE);
}
printf("%s", "Bind Done!\n");
listen(sock_desc, 3);
printf("%s", "Server Listening...\n");
new_sock = accept(sock_desc,
(struct sockaddr *)&client,
(socklen_t*)&addrlen);
if(new_sock < 0){
perror("Accept Failed!\n");
exit(EXIT_FAILURE);
}
printf("%s", "Connection accepted!\n");
char* message = "Hello from Server";
printf("%s", "Sending message to Client..\n");
write(new_sock, message, strlen(message));
printf("%s", "Client Message:\n");
read( new_sock , buffer, sizeof(buffer));
printf("%s\n",buffer );
printf("%s", "Message Send, Closing Connection!\n");
return 0;
}
#include <stdlib.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <string.h>
#include <unistd.h>
int main(){
int sock_desc, new_sock;
struct sockaddr_in server, client;
int addrlen = sizeof(server);
char buffer[1024] = {0};
sock_desc = socket(AF_INET, SOCK_STREAM, 0);
if(sock_desc == 0){
perror("Socked Failed");
exit(EXIT_FAILURE);
}
printf("Socket Created!\n");
server.sin_family = AF_INET;
server.sin_addr.s_addr = INADDR_ANY;
server.sin_port = htons(8181);
int conn = bind(sock_desc,
(struct sockaddr *) &server,
sizeof(server));
if(conn < 0){
perror("Bind Failed!\n");
exit(EXIT_FAILURE);
}
printf("%s", "Bind Done!\n");
listen(sock_desc, 3);
printf("%s", "Server Listening...\n");
new_sock = accept(sock_desc,
(struct sockaddr *)&client,
(socklen_t*)&addrlen);
if(new_sock < 0){
perror("Accept Failed!\n");
exit(EXIT_FAILURE);
}
printf("%s", "Connection accepted!\n");
char* message = "Hello from Server";
printf("%s", "Sending message to Client..\n");
write(new_sock, message, strlen(message));
printf("%s", "Client Message:\n");
read( new_sock , buffer, sizeof(buffer));
printf("%s\n",buffer );
printf("%s", "Message Send, Closing Connection!\n");
return 0;
}
#include <stdio.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <unistd.h>
#include <string.h>
#include <stdlib.h>
int main(int argc, char const *argv[])
{
int sock_desc;
struct sockaddr_in serv_addr;
char buffer[1024] = {0};
sock_desc = socket(AF_INET, SOCK_STREAM, 0);
if (sock_desc < 0) {
perror("Socked Failed\n");
exit(EXIT_FAILURE);
}
serv_addr.sin_family = AF_INET;
serv_addr.sin_port = htons(8181);
// Convert IPv4 and IPv6 addresses from text to binary form
if(inet_pton(AF_INET, "127.0.0.1", &serv_addr.sin_addr) <=0 ) {
printf("Invalid IP Address\n");
exit(EXIT_FAILURE);
}
int connetion = connect(sock_desc, (struct sockaddr *)&serv_addr, sizeof(serv_addr));
if (connetion < 0) {
printf("Connection Failed\n");
exit(EXIT_FAILURE);
}
printf("%s", "Reading server message!\n");
read( sock_desc , buffer, sizeof(buffer));
printf("%s", "Server message!\n");
printf("%s\n",buffer );
char* message = "Hello from client";
printf("%s", "Sending message to Server..\n");
write(sock_desc, message, strlen(message));
printf("%s", "Message send!\n");
return 0;
}
#include <sys/socket.h>
#include <arpa/inet.h>
#include <unistd.h>
#include <string.h>
#include <stdlib.h>
int main(int argc, char const *argv[])
{
int sock_desc;
struct sockaddr_in serv_addr;
char buffer[1024] = {0};
sock_desc = socket(AF_INET, SOCK_STREAM, 0);
if (sock_desc < 0) {
perror("Socked Failed\n");
exit(EXIT_FAILURE);
}
serv_addr.sin_family = AF_INET;
serv_addr.sin_port = htons(8181);
// Convert IPv4 and IPv6 addresses from text to binary form
if(inet_pton(AF_INET, "127.0.0.1", &serv_addr.sin_addr) <=0 ) {
printf("Invalid IP Address\n");
exit(EXIT_FAILURE);
}
int connetion = connect(sock_desc, (struct sockaddr *)&serv_addr, sizeof(serv_addr));
if (connetion < 0) {
printf("Connection Failed\n");
exit(EXIT_FAILURE);
}
printf("%s", "Reading server message!\n");
read( sock_desc , buffer, sizeof(buffer));
printf("%s", "Server message!\n");
printf("%s\n",buffer );
char* message = "Hello from client";
printf("%s", "Sending message to Server..\n");
write(sock_desc, message, strlen(message));
printf("%s", "Message send!\n");
return 0;
}
No comments