From bd88c3f19f8efd8ff1f2996ebf2ac1bd3f4c77a6 Mon Sep 17 00:00:00 2001
From: jl4589 <jl4589@drexel.edu>
Date: Thu, 13 Mar 2025 17:06:12 -0400
Subject: [PATCH] Added debugg statements into process CLI REQUESSS

---
 Assignment-06/starter/rsh_server.c | 22 ++++++++++++++++------
 1 file changed, 16 insertions(+), 6 deletions(-)

diff --git a/Assignment-06/starter/rsh_server.c b/Assignment-06/starter/rsh_server.c
index 6419864..746672a 100644
--- a/Assignment-06/starter/rsh_server.c
+++ b/Assignment-06/starter/rsh_server.c
@@ -207,56 +207,66 @@ int boot_server(char *ifaces, int port){
  * 
  */
 
- int process_cli_requests(int svr_socket) {
+int process_cli_requests(int svr_socket) {
     int cli_socket;
     char buffer[RDSH_COMM_BUFF_SZ];
     ssize_t bytes_received;
     int rc = OK;
 
+    printf("SERVER: Waiting for client connections...\n");
+
     while (1) {
         // Accept a client connection
         cli_socket = accept(svr_socket, NULL, NULL);
         if (cli_socket == -1) {
-            perror("accept");
+            perror("SERVER: accept failed");
             rc = ERR_RDSH_COMMUNICATION;
             break;
         }
+        printf("SERVER: Client connected. Socket: %d\n", cli_socket);
 
         // Receive data from the client
         bytes_received = recv(cli_socket, buffer, sizeof(buffer), 0);
         if (bytes_received < 0) {
-            perror("recv");
+            perror("SERVER: recv failed");
             close(cli_socket);
             rc = ERR_RDSH_COMMUNICATION;
             break;
         } else if (bytes_received == 0) {
             // Client disconnected
+            printf("SERVER: Client disconnected.\n");
             close(cli_socket);
             continue;
         }
 
+        // Null-terminate the received data
+        buffer[bytes_received] = '\0';
+        printf("SERVER: Received command: %s\n", buffer);
+
         // Check for special commands
         if (strncmp(buffer, "stop-server", strlen("stop-server")) == 0) {
-            printf("Client requested server to stop\n");
+            printf("SERVER: Client requested server to stop.\n");
             rc = OK_EXIT;
             close(cli_socket);
             break;
         }
 
         // Handle client requests
+        printf("SERVER: Executing client request...\n");
         rc = exec_client_requests(cli_socket);
         if (rc < 0) {
-            fprintf(stderr, "Error processing client requests: %d\n", rc);
+            fprintf(stderr, "SERVER: Error processing client requests: %d\n", rc);
             close(cli_socket);
             break;
         }
 
         // Close the client socket
         close(cli_socket);
-        printf("Client socket closed properly\n");
+        printf("SERVER: Client socket closed properly.\n");
     }
 
     // Clean up and stop the server
+    printf("SERVER: Stopping server...\n");
     stop_server(svr_socket);
     return rc;
 }
-- 
GitLab