diff --git a/webserver/.client.c.swp b/webserver/.client.c.swp deleted file mode 100644 index d8c251ca9ab55ecb09d9f63cece9cc73881b3abd..0000000000000000000000000000000000000000 Binary files a/webserver/.client.c.swp and /dev/null differ diff --git a/webserver/client.c b/webserver/client.c index 00e454cb80717cce77603e1a3b7793ef9cb18659..19fffad1988ad98f733b3c66dbeb8f7cfbf35718 100644 --- a/webserver/client.c +++ b/webserver/client.c @@ -9,16 +9,18 @@ -char* testCorrect(char* str){ +char* testCorrect(char* str, int first){ char* strRet; char *correctStr = "GET / HTTP/1.1"; char *incorrectStr = "HTTP/1.1 400 Bad Request\r\nConnection: close\r\nContent-Length: 17\r\n\r\n400 Bad request"; char *correctStr2 = "HTTP/1.1 200 OK\r\nConnection: close\r\nContent-Length: 17\r\n\r\n200 OK"; - if(strstr(str,correctStr) == NULL && !strcmp(str,"\r\n")){ + if(strstr(str,correctStr) == NULL && first == 0) { strRet=incorrectStr; //printf("---\n%s\n---",str); - }else{ + }else if(!strcmp(str,"\r\n")) { strRet = correctStr2; + }else{ + strRet = NULL; } printf("---\n%s\n---",strRet); return strRet; @@ -41,12 +43,15 @@ int traitementClient(int socket_client){ exit(1); } //printf("test avant while\n"); - - while(!feof(fd) && fgets(str,8000,fd) != NULL){ /* writing content to stdout */ - fprintf(fd,"<Notre Serveur> %s\n",testCorrect(str)); + int first = 0; + while(!feof(fd) && fgets(str,8000,fd) != NULL){ + char* resTest = testCorrect(str,first); + if(resTest!=NULL)fprintf(fd,"<Notre Serveur> %s\n",resTest); + first=1; fflush(fd); } + first=0; //fflush(fd); fclose(fd); return 0; -} \ No newline at end of file +} diff --git a/webserver/client.o b/webserver/client.o index 61b9d020a9db41fd90e632ee226d73beee69e6d1..3c7aaca08ec00cfdfd7053bcff251547ae5502d8 100644 Binary files a/webserver/client.o and b/webserver/client.o differ diff --git a/webserver/makefile.dep b/webserver/makefile.dep index 65ca8f947e1b16a662bdc5adbad0a1e111a810f6..425baca1f824518a15ad49e5df95e4b928fb8b78 100644 --- a/webserver/makefile.dep +++ b/webserver/makefile.dep @@ -1,3 +1,3 @@ +socket.o: socket.c socket.h client.h client.o: client.c socket.h client.h main.o: main.c socket.h -socket.o: socket.c socket.h client.h diff --git a/webserver/pawnee b/webserver/pawnee index d9dbb98ac0b40d43a5f742b1454b8029696d61a3..65c1d490681a32cb8646f454ae999aff9c33b416 100755 Binary files a/webserver/pawnee and b/webserver/pawnee differ