From 1a212543330d82e745e108033ebe6463209623c7 Mon Sep 17 00:00:00 2001 From: Vinicius Silva Date: Tue, 5 Sep 2023 17:54:21 -0300 Subject: [PATCH] Makefile automate run created --- .vscode/settings.json | 4 ++- client | Bin 17240 -> 0 bytes client.c | 72 +++++++++++++++++++++++++----------------- makefile | 18 +++++++++++ server | Bin 17104 -> 0 bytes server.c | 62 +++++++++++++++++++++--------------- 6 files changed, 100 insertions(+), 56 deletions(-) delete mode 100755 client create mode 100644 makefile delete mode 100755 server diff --git a/.vscode/settings.json b/.vscode/settings.json index a0aef3b..d4dcb35 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,6 +1,8 @@ { "files.associations": { "unistd.h": "c", - "stdio.h": "c" + "stdio.h": "c", + "in.h": "c", + "time.h": "c" } } \ No newline at end of file diff --git a/client b/client deleted file mode 100755 index fa20f624a3f6826baa535a1dd3432725d99e9d6b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17240 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 #include - #define TRUE 1 #define FALSE 0 #define HOST_IP "127.0.0.1" // IPV4 loopback address -#define SERVER_PORT 8077 // Server port -#define BUFFER_SIZE 8192 // Default size (64bytes) to (8Kbytes) +#define SERVER_PORT 8179 // Server port #define PORT_USED_CODE 256 #define SOCKET_ERROR_CODE -1 // Socket create, Connection server, Receive buffer to server code error #define SYSTEM_EXIT_FAILED 1 // Operating System program error response #define SYSTEM_EXIT_SUCCESS 0 // Operating System program success response - -char sended_buffer[BUFFER_SIZE]; +#define KB 1024 typedef struct sockaddr_in socket_address; @@ -68,11 +65,6 @@ void connect_to_server(int client_socket, socket_address server_address) } } -void init_buffer() -{ - memset(&sended_buffer, '0', BUFFER_SIZE); -} - int is_server_down() { char* full_command = (char*)malloc(1000*sizeof(char)); @@ -90,11 +82,11 @@ int is_server_down() system(full_command) == PORT_USED_CODE ? FALSE : TRUE; } -int receive_buffer(int client_socket) +int receive_buffer(int client_socket, int buffer_size) { if(!is_server_down()) { - char received_buffer[BUFFER_SIZE]; // Buffer will be send by server to client + char received_buffer[buffer_size]; // Buffer will be send by server to client int bytes_read = recv(client_socket, received_buffer, sizeof(received_buffer), 0); if(bytes_read == SOCKET_ERROR_CODE) @@ -104,8 +96,18 @@ int receive_buffer(int client_socket) }else { received_buffer[bytes_read] = '\0'; // Buffer string finalized with '\0', - printf("Receiving [PONG] %f KB\n", ((float)BUFFER_SIZE/(float)1024)); - printf("\nServer message received successfully!\n"); + + float size_in_kb = ((float)buffer_size/(float)KB); + + if(buffer_size >= KB){ + printf("[CLIENT] - Receive [PONG] %dKB", (buffer_size/KB)); + }else{ + + printf("[CLIENT] - Receive [PONG] %fKB", ((float)buffer_size/(float)KB)); + } + + printf("\n[CLIENT] - Server message received successfully!\n\n"); + } }else{ printf("Server is down!"); @@ -113,18 +115,19 @@ int receive_buffer(int client_socket) } } -void send_buffer(int client_socket) +void send_buffer(int client_socket, char sended_buffer[], int buffer_size) { - clock_t init_time, end_time, total_time; - init_buffer(sended_buffer); - - - printf("Sending [PING] %f KB\n", ((float)BUFFER_SIZE/(float)1024)); - - + float size_in_kb = ((float)buffer_size/(float)KB); + + if(buffer_size >= KB){ + printf("[CLIENT] - Sending [PING] %dKB\n\n", (buffer_size/KB)); + }else{ + printf("[CLIENT] - Sending [PING] %fKB\n\n", ((float)buffer_size/(float)KB)); + } + send(client_socket, sended_buffer, strlen(sended_buffer), 0); - receive_buffer(client_socket); + receive_buffer(client_socket, buffer_size); } @@ -134,7 +137,7 @@ void controlc_handler() exit(SYSTEM_EXIT_SUCCESS); } -void socket_listen(int client_socket) +void socket_listen(int client_socket, char sended_buffer[], int buffer_size) { if(signal(SIGINT, controlc_handler) == SIG_ERR) @@ -143,27 +146,38 @@ void socket_listen(int client_socket) exit(SYSTEM_EXIT_FAILED); } - send_buffer(client_socket); + send_buffer(client_socket, sended_buffer, buffer_size); } -int main(void) +int main(int argc, char** argv) { - + + int buffer_size = (int)atoi(argv[1]); + + char sended_buffer[buffer_size]; + memset(&sended_buffer, '0', buffer_size); + int client_socket = init_socket(); socket_address server_address; server_address = config_server_address(); + printf("\n==================================================================\n"); + printf(" PING PONG PROGRAM \n"); + printf("==================================================================\n\n"); + connect_to_server(client_socket, server_address); clock_t start = clock(); - socket_listen(client_socket); + socket_listen(client_socket, sended_buffer, buffer_size); clock_t end = clock(); double elapsed_time_ms = (double)(end - start) * 1000.0 / CLOCKS_PER_SEC; - printf("Time: %.2f ms\n", elapsed_time_ms); + printf("Time: %.2f ms\n\n", elapsed_time_ms); + + printf("==================================================================\n"); return SYSTEM_EXIT_SUCCESS; diff --git a/makefile b/makefile new file mode 100644 index 0000000..e55a264 --- /dev/null +++ b/makefile @@ -0,0 +1,18 @@ +CC=gcc + +all: + @$(CC) client.c -o client + @$(CC) server.c -o server + @./server $(buffer_size)& + @./client $(buffer_size) + +clean: + @rm server client + +run_client: + @$(CC) client.c -o client + @./client $(buffer_size)& + +run_server: + @$(CC) server.c -o server + @./server $(buffer_size)& \ No newline at end of file diff --git a/server b/server deleted file mode 100755 index c12b2d3ee3aa3ac0e2a1c2318b3d8a17676f62e9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17104 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 #include +#define FALSE 0 #define TRUE 1 #define HOST_IP "127.0.0.1" // IPV4 loopback address -#define SERVER_PORT 8077 // Server port -#define BUFFER_SIZE 8192 // Default size (64bytes) to (8Kbytes) +#define SERVER_PORT 8179 // Server port #define MAX_CONNECTIONS 2 // Num max client connected simultaneously #define SOCKET_ERROR_CODE -1 // Socket create, Connection server, Receive buffer to server code error #define SYSTEM_EXIT_FAILED 1 // Operating System program error response @@ -17,8 +17,6 @@ typedef struct sockaddr_in socket_address; -char buffer[BUFFER_SIZE]; - int create_socket() { int server_socket; @@ -72,32 +70,39 @@ int accept_connection(int client_socket, int server_socket, socket_address clien exit(SYSTEM_EXIT_FAILED); }else{ - printf("Client connected: %s:%d\n", inet_ntoa(client_address.sin_addr), ntohs(client_address.sin_port)); + printf("[SERVER] - Client connected: %s:%d\n", inet_ntoa(client_address.sin_addr), ntohs(client_address.sin_port)); return client_socket; } } -void send_buffer(int client_socket) +void send_buffer(int client_socket, char buffer[]) { - printf("Sending [PONG]\n"); + printf("\n[SERVER] - Sending [PONG]\n\n"); send(client_socket, buffer, strlen(buffer), 0); } -void receive_buffer(int client_socket) +void receive_buffer(int client_socket, char buffer[], int buffer_size) { int bytes_read; + int lock = FALSE; - printf("Receiving [PING]\n"); + char received_buffer[buffer_size]; - while((bytes_read = recv(client_socket, buffer, sizeof(buffer), 0)) > 0) + printf("[SERVER] - Receiving [PING]\n"); + + while((bytes_read = recv(client_socket, received_buffer, sizeof(received_buffer), 0)) > 0) { - buffer[bytes_read] = '\0'; - printf("Client message received successfully!\n"); + if(!lock){ - send_buffer(client_socket); + lock = TRUE; + received_buffer[bytes_read] = '\0'; + printf("[SERVER] - Client message received successfully!"); + + send_buffer(client_socket, received_buffer); + } } @@ -110,7 +115,7 @@ void controlc_handler() } -void server_listen(int client_socket, int server_socket, socket_address client_address, socklen_t client_addr_len) +void server_listen(int client_socket, int server_socket, socket_address client_address, socklen_t client_addr_len, char buffer[], int buffer_size) { if (listen(server_socket, MAX_CONNECTIONS) == SOCKET_ERROR_CODE) @@ -120,25 +125,30 @@ void server_listen(int client_socket, int server_socket, socket_address client_a exit(SYSTEM_EXIT_FAILED); } - printf("Server TCP listening on port %d...\n", SERVER_PORT); + printf("[SERVER] - Server TCP listening on port %d...\n", SERVER_PORT); - if(signal(SIGINT, controlc_handler) == SIG_ERR) - { - perror("Signal create error!"); - exit(SYSTEM_EXIT_FAILED); - } + //if(signal(SIGINT, controlc_handler) == SIG_ERR) + //{ + // perror("Signal create error!"); + // exit(SYSTEM_EXIT_FAILED); + //} - while(TRUE) - { + //while(TRUE) + //{ client_socket = accept_connection(client_socket, server_socket, client_address, client_addr_len); - receive_buffer(client_socket); - } + receive_buffer(client_socket, buffer, buffer_size); + //} } -int main(void) +int main(int argc, char** argv) { + + int buffer_size = (int)atoi(argv[1]); + + char buffer[buffer_size]; + int server_socket, client_socket; server_socket = create_socket(); @@ -150,5 +160,5 @@ int main(void) bind_server(server_socket, server_address); - server_listen(client_socket, server_socket, client_address, client_addr_len); + server_listen(client_socket, server_socket, client_address, client_addr_len, buffer, buffer_size); }