From 0520dd07e531e92b8f877ef19d7d4400846ec27d Mon Sep 17 00:00:00 2001
From: Terence Denning <terrencedenning@gmail.com>
Date: Thu, 18 Apr 2019 03:02:29 -0700
Subject: [PATCH] trimmed keyword

---
 .../ipch/ab23cd8ac6e5a21a/http-server.ipch    | Bin 3993600 -> 3993600 bytes
 http-server.c                                 |  14 +++++++++++---
 server                                        | Bin 18304 -> 18304 bytes
 3 files changed, 11 insertions(+), 3 deletions(-)

diff --git a/.vscode/ipch/ab23cd8ac6e5a21a/http-server.ipch b/.vscode/ipch/ab23cd8ac6e5a21a/http-server.ipch
index 483f6a50131d7006c4728cd9acf18a84051efd9f..2793f8f3ade6ff1e7d82a3895a263a978ce86674 100644
GIT binary patch
delta 24588
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

delta 24548
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

diff --git a/http-server.c b/http-server.c
index cf3a91f..31e7f79 100644
--- a/http-server.c
+++ b/http-server.c
@@ -195,7 +195,12 @@ static bool handle_http_request(int sockfd)
                 size = st.st_size + added_length;
                 n = sprintf(buff, HTTP_200_FORMAT, size);
             }
-            else if(strstr(buff, "guess=Guess") != NULL) {     
+            else if(strstr(buff, "guess=Guess") != NULL) {  
+                char *keyword = strstr(buff, "keyword=")+8;
+                int keyword_length = strlen(keyword);
+                keyword[keyword_length-12] = '\0';
+                printf("keyword is: %s\n", keyword);
+
                 if(sockfd == user1){
                     if(user2_start == 1){
                         webpage = "html/4_accepted.html";
@@ -253,8 +258,11 @@ static bool handle_http_request(int sockfd)
                     return false;
                 }
             } else {
-                printf("%s\n", buff);
-                write(sockfd, buff, st.st_size);
+                if (write(sockfd, buff, st.st_size) < 0)
+                {
+                    perror("write");
+                    return false;
+                }
                 
             }
         } 
diff --git a/server b/server
index 0231189ab0ac23a3fdeca41a12affc70eed35476..f6aa0ea59f69134f1df52d42bfbc04e1aad31006 100755
GIT binary patch
delta 3180
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

delta 3044
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
UCP%rLaovD4zd`Pr<?@UP0Oaw1!2kdN

-- 
GitLab