From 532561174c767bc0547e1123ea4d069b0693a7cb Mon Sep 17 00:00:00 2001
From: "romain.gabet.etu" <romain.gabet.etu@univ-lille.fr>
Date: Mon, 25 Jan 2021 15:58:22 +0100
Subject: [PATCH] 4.1.1

---
 webserver/.main.c.swp   | Bin 1024 -> 0 bytes
 webserver/.socket.c.swp | Bin 1024 -> 1024 bytes
 webserver/pawnee        | Bin 17192 -> 17248 bytes
 webserver/socket.c      |  17 ++++++++++----
 webserver/socket.c.save |  51 ++++++++++++++++++++++++++++++++++++++++
 webserver/socket.o      | Bin 4168 -> 4224 bytes
 6 files changed, 64 insertions(+), 4 deletions(-)
 delete mode 100644 webserver/.main.c.swp
 create mode 100644 webserver/socket.c.save

diff --git a/webserver/.main.c.swp b/webserver/.main.c.swp
deleted file mode 100644
index a1220280d008ad1dbfb107cf442f0c60518e8045..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1024
zcmYc?$V<%2S1{HyVn6{kEDQ|kiAkv?MJU2pImD{VP0Y;GOU7!%sNiS_jE2Afga80W
CV+xW0

diff --git a/webserver/.socket.c.swp b/webserver/.socket.c.swp
index 8251e222fc47f31ca14a44bee5f55d42bc7f946f..9edd53f4ad4dd74cbef6e97314b7b144178fb1cf 100644
GIT binary patch
delta 13
UcmZqRXyBM2!SsQ3qtr8I039_1WB>pF

delta 13
UcmZqRXyBM2!PLXDQR*2p02<f>{{R30

diff --git a/webserver/pawnee b/webserver/pawnee
index b76036d5f0bbbd9c08a3ccd0fe0ba0ba9dd2c8b4..8005d1550a172b5f7832a463b47661ededd46983 100755
GIT binary patch
delta 1630
zcmZ3{#`vI(ae{;(gCGMKIDkn8h6fWhmvi1=hwyGpys6LmmKnl%J6Vu1opS*bgtuaI
zBV#e6u6&W8X)dpU$DYG}hxfjBe8%jUu>+(6WGW*A0|Ogabt9M*oUF*K&e%D*kwtuR
z0<!^Q`Q(Yr?u@CE6Pd*s<G|!nu$%%*0^=4iYXb|*<P>I+$un3a82u-2WJzEx&Ph!z
zm@L4$Xz~VD1;*OR7g@y(AAl@lU|{%Q3$})V141z@fQmOj{RR_nm@LUw%qY0Imra<F
zs{ks=&M<ksq3Grf?1~(d1Re=?=`%27a5FG4yfpa#|Nnngrpb>5biF?_GBErX-KNLD
z@P%LAg@M7N*EUceM6r5-D9axuq8{C>eR>QG9<2vTIR8K3mu~<$<}j4@=(SY@DeN_s
znj9@C<B|$h$?^X|8rVRX!Uo%idJGH<rTU>B&9-hJrbp+~5+09k+e3N`3@>#5|Ns9Y
z<NyEv$5?kx-Yw`V{)Lx;;l=cS|NkF%eFF-1kKWKX-L8KoUl0<j|Nr;@|K=b6OL;tc
zZBK*L#r^yLKkc~d1tx}W*E9Uv4|E=X!3`4XbiH)k^$N(n9=*O7x?TV55@29p@aR0(
zdHjXcKZGI6K!!;E`~Sb&_0K*o1_p-C<1bzzSuzVG|MM?ceiuVD0|Uc8kfEK&Uwr-h
z|9_|JkLFsabJ{^FFZ})g-=mkclNV%{>j#f+*AE_@$6sWEggXy;bo+kjcKrcyh3nt{
z|M!FZ_hR?o|NmcKnanAy?3yhM(s=xZ)!+aBTMv{9d-U2S2s1Fexb^4%{~cNk3=FTO
zJ$h}UKtjj={Qtk-L7su(MbW?i|95~~b@DJc<R|9~i;4wkF))OB^y-4>U?0t=9?fq!
zUIcHRB^<^xNkM#ayPD!;aRoz2l4jWKu3*JBd4-z#<O^ydnhLKV<{7;D|386&fkE{3
z|Nj>l7#Q5&{Qv)ffq`MeoB#g>7#SD@CiALmGoF}iscy`8VREjzGGoHziR$8twy*yG
zHv;+0kx!tF$(a{w34;s+149i11B3tMlj`z}GbX=OcW2zN*-&FUD<>@3FPQvMSD*38
zWJSGr#s`xd_2e1PO<t&H&!{l@p`N_p4yZ}c9L?}!vY@^_<BiFI`tpqHCKu}e7kmba
zWl&H+al_<FgZ+{ZSfE@aikX3(Vcq0FLvfIPLs4c<h98p~4aFIEOrB}z&iG;SLql;%
zSb2h^je(hgpW(@5L8I%86_YO-i84zvbWCP6c9%4OW>A<~J_ZH`CI&u+gvp7<;*zlJ
z3zIcxU|?Wm0O_4*tk3vh^Fd>CM#cw|f12nsR!r73jhF0zW@VTLF-8UkAtsR33r*cQ
zpF%A&n*7mJov~uFq?!BV40D0W1!fA24U;FD=`&84e9#Qx0d1%;4onOT0$^)Dnu#-t
zPv$g_XY81qX|6qaiJ1uFk;xOy#Tg$=UT7x1`GEOGCLwSE<>27%<LTraZ=`3WXS%t-
zs)BKH02Axx7uE`lj2k9%+Ug6!f)_@go9t<;FSw2sVkwMPncQisKlz8Pz~mFQ2An^j
zvOgv>+L^;678bz@lRfR~IY4O+WX9w|JMqcS?F1)V*b7YNus7g>$BW=(Cwnu_C&D0A
z3=B^uH`=>1p4)uVem^5)#pF&$ea;GKFjh=H=xELf3)GIuj86899g`iM>^WB$Kr~xS
b?sPKed;p3V1_p*NlTSLCGhUg@=&TL^4F%*7

delta 1541
zcmaFR#<-%5ae{>42LT2!Z~&7G3@avTF6Ugp4&g1BcvGMAE;EF4cd{U3I_C@~2yemW
zM#f@B-GK7AXUC>pId$2zw613FdOOp?&o4nLK&CP>Ffg!zRX2i3fys)@>Ws~k8(G9B
zComf@7EYeX?9LcJIgweMF#=4^2g@n2BrvW6vo^3uuzE5uFepuSWD=SDki}!NKI_8C
zmssT(%O`(i6*s&f2sW7EgDr&SfKUt*pyCx!U%|vHCR?%<GYV{8%O=dY`Hye{$0UJA
zj6#z?3+Q@(Wn^IZFM3Rmf#D0kybA+^N3U(9K8Rus0#TMfN<=-nS?B37FnF{cDB=A7
zfM31=WZPjV?a^zi2~yZ=sx&!UP{yScs*>aXgEX*#Fog}aFZCE07)td+J(_L9KunL$
zrzJcd-L|Ln7#LpY{{R2~MaKXC|BtaAoP1i)wVs8Kf#JpSfB*ld9d~`e#L(?}hJX8k
z&f_maKti3akB+-O0lCAY*Y`oU>z`eqfcNM;*LnO!^1uK8n}7T-<?-mXJ;%$y@FMBo
z|Nq^tfA(=PFfeo;e_@Oye+VS+1d-nbGHxG;=sf<yuKwTu|DCQsnropZtp}-;{P+LA
zM=$FtUIqq_PS+0}-L4-zI*-5D^!NXNkIq9L-M$~XU4KAa(f9ZN|KqNAKxx6FH}p=o
z>kr2rEDRuh7k7aY%07@x=kXU|e<7|F_UN^pB+S6@V(Z`k|9AZV&;9@ZYt|hg*PJ{&
zSzK7zxk4DE`S=TuzyJTY9w-H=&jqP}@#p{l9a;<w46mg<dTrA|LRbI%|G(cso`K;-
z!N33ip@#6wJ4~(@78Og-VqggM=+y<$!9JQ#J(}Neyhz@>N;r&XasZRSBn9!w77B)&
z3luEbSV7h^Ocqm6n!Hj?ee!uVQB8qY5Caun{r{i9z`(%z`v3n63=9mGZ~p)Pz`($;
z;LZR40wAwV=2h2b+%efw-I(#f<Xm-S#(>Ea)x{NcU;Y1Y0+M&+6KG>{=4E5nXXIh$
zV31*8V5nhWU~rs#QeB?0WAaONcg6*q4K=p2a>5e(gvlRu^%<{BR@94UJTbXZPoD9_
z<b`_nj2x36>d6bvfaEv^Xbxt$F<DUGo^i+IKz(_}36l%;|8s&p!@$5$F}cxTKjVqX
zj)vkO8ADNK4u&0*3k}657Z{2$b1}@AywK2{@xkPahN8@T3?INWKf{&Dl1A4V3nqUw
z5@&3f{Lx5svYfFIqr&7sV{yp<Xtsmdpvb_$z{J4EFky0|F-Y}HV|~U8n@<{>GcsP7
z%xJ35STNbpG@h|x@<dZ{#w(Lon!0mdg&JWp`KPHmW5HxaGk3;{$(d##wKL81Jv*Q|
z8fL{cMg|5U20jK@F{TZbaA0C!5MYpGXh2i%!vs;!Ia$y=esYGHz~lyVnaNwsMHtUc
zRx}si{J?x8)8-{s<&2vZY!nz7XH0gq)fYSgO0WzJ3~+jKqpiN+1W2-AfYC~m58CQ;
z?tqH!nEcb$obv{hcVn`pojE*iU~$ATxzVnk@xWw8dwtFapp47F!0=$QrM>xN1ABqV
z4fY0{SA-${xiWdDy*uOC&5REF85s*EA9U2`EP(o~VDe8#b558)8zx&i*)ujwu5_~J
eTwnmvtT6eYlR4)Ba|rL@WJYIm#)XqDoz(${R@guQ

diff --git a/webserver/socket.c b/webserver/socket.c
index 614e60d..e88498d 100644
--- a/webserver/socket.c
+++ b/webserver/socket.c
@@ -4,6 +4,7 @@
 #include "socket.h"
 #include <netinet/in.h>
 
+
 int creer_serveur(int port){
 //socket
 	int socket_serveur;
@@ -12,7 +13,13 @@ int creer_serveur(int port){
 		/* traitement de l'erreur */
 		perror("socket_serveur");
 	}
-	/* Utilisation de la socket serveur */
+
+	int optval = 1;
+	if (setsockopt(socket_serveur, SOL_SOCKET, SO_REUSEADDR, &optval, sizeof(int)) == -1) {
+		perror("Can not set SO_REUSEADDR option");
+	}
+
+	/*Utilisation de la socket serveur */
 //bind
 	struct sockaddr_in saddr;
 	saddr.sin_family = AF_INET; /* Socket ipv4 */
@@ -36,9 +43,11 @@ int creer_serveur(int port){
 	}
 	/* On peut maintenant dialoguer avec le client */
 	const char *message_bienvenue = "Bonjour, bienvenue sur mon serveur\nExcogitatum est super his, ut homines quidam ignoti, vilitate ipsa parum cavendi ad colligendos rumores per Antiochiae latera cuncta destinarentur relaturi quae audirent. hi peragranter et dissimulanter honoratorum circulis adsistendo pervadendoque divites domus egentium habitu quicquid noscere poterant vel audire latenter intromissi per posticas in regiam nuntiabant, id observantes conspiratione concordi, ut fingerent quaedam et cognita duplicarent in peius, laudes vero supprimerent Caesaris, quas invitis conpluribus formido malorum inpendentium exprimebat.Sed fruatur sane hoc solacio atque hanc insignem ignominiam, quoniam uni praeter se inusta sit, putet esse leviorem, dum modo, cuius exemplo se consolatur, eius exitum expectet, praesertim cum in Albucio nec Pisonis libidines nec audacia Gabini fuerit ac tamen hac una plaga conciderit, ignominia senatus.Post emensos insuperabilis expeditionis eventus languentibus partium animis, quas periculorum varietas fregerat et laborum, nondum tubarum cessante clangore vel milite locato per stationes hibernas, fortunae saevientis procellae tempestates alias rebus infudere communibus per multa illa et dira facinora Caesaris Galli, qui ex squalore imo miseriarum in aetatis adultae primitiis ad principale culmen insperato saltu provectus ultra terminos potestatis delatae procurrens asperitate nimia cuncta foedabat. propinquitate enim regiae stirpis gentilitateque etiam tum Constantini nominis efferebatur in fastus, si plus valuisset, ausurus hostilia in auctorem suae felicitatis, ut videbatur.";
-	write(socket_client, message_bienvenue, strlen(message_bienvenue));
-
-	int optval=1;
+	while(1){
+		write(socket_client, message_bienvenue, strlen(message_bienvenue));
+		sleep(1);
+	}
+	//int optval=1;
 	if (setsockopt(socket_client, SOL_SOCKET, SO_REUSEADDR, &optval, sizeof(int)) == -1) {
 		perror("Can not set SO_REUSEADDR option");
 		return -1;
diff --git a/webserver/socket.c.save b/webserver/socket.c.save
new file mode 100644
index 0000000..626d349
--- /dev/null
+++ b/webserver/socket.c.save
@@ -0,0 +1,51 @@
+#include <string.h>
+#include <unistd.h>
+#include <stdio.h>
+#include "socket.h"
+#include <netinet/in.h>
+
+int creer_serveur(int port){
+//socket
+	int socket_serveur;
+	socket_serveur = socket(AF_INET, SOCK_STREAM, 0);
+	if (socket_serveur == -1) {
+		/* traitement de l'erreur */
+		perror("socket_serveur");
+	}
+	/* Utilisation de la socket serveur */
+//bind
+	struct sockaddr_in saddr;
+	saddr.sin_family = AF_INET; /* Socket ipv4 */
+	saddr.sin_port = htons(port); /* Port d'écoute */
+	saddr.sin_addr.s_addr = INADDR_ANY; /* écoute sur toutes les interfaces */
+	if (bind(socket_serveur, (struct sockaddr *)&saddr, sizeof(saddr)) == -1){
+		perror("bind socker_serveur");
+		/* traitement de l'erreur */
+	}
+//listen
+	if (listen(socket_serveur, 10) == -1) {
+		perror("listen socket_serveur");
+		/* traitement d'erreur */
+	}
+
+	int socket_client;
+	socket_client = accept(socket_serveur, NULL, NULL);
+	if (socket_client == -1) {
+		perror("accept");
+		/* traitement d'erreur */
+	}
+	/* On peut maintenant dialoguer avec le client */
+	const char *message_bienvenue = "Game of Thrones [geɪm əv θɹoʊnz]a, également appelée Le Trône de fer;b (selon le titre français de l'œuvre romanesque dont elle est adaptée) est une série télévisée américaine de Fantasy1 créée par David Benioff et D. B. Weiss, diffusée entre le 17 avril 2011 et le 19 mai 2019 sur HBO aux États-Unis en simultané sur HBO Canada au Canada.
+
+Il s'agit de l'adaptation de la série de romans écrits par George R. R. Martin depuis 1996, saga réputée pour son réalisme et par ses nombreuses inspirations tirées d’événements, lieux et personnages historiques réels, tels que la guerre des Deux-Roses, le mur d'Hadrien ou Henri VII Tudor2.
+
+En France, elle est diffusée depuis le 5 juin 2011 sur OCS Cinechoc, devenue OCS Choc, sur Canal+ depuis le 10 janvier 2013 et rediffusée en clair sur D8 (devenue C8) à partir du 28 octobre 2013 et sur D17 (devenue CStar) en 2014.\n";
+	write(socket_client, message_bienvenue, strlen(message_bienvenue));
+
+	int optval=1;
+	if (setsockopt(socket_client, SOL_SOCKET, SO_REUSEADDR, &optval, sizeof(int)) == -1) {
+		perror("Can not set SO_REUSEADDR option");
+		return -1;
+	}
+	return 0;
+}
diff --git a/webserver/socket.o b/webserver/socket.o
index b535438787a1d7b4bcfb378913ea2cb4958bfdf0..0b82ed68b8d11a76ee51266d539551e0bfa79a1c 100644
GIT binary patch
delta 544
zcmX@1(4aU$gVAB4rZ?Yl*Efs|3=AH<p>Mif|4g=Kl$*GQS1Ikd>jfr;Zr3yX+YfXe
zf5E`Oz>wDIdg-|96%f;-*Z0E2Y10+<gLHx=UxURN7>e_gvr|jri&KlrQcH^_e`8mg
z+|Fpo2GYd9uz5S9HQQuK4!Ow|94fp<AkB_^0&Psrylj&hdF3Z}a9m(CnjFcQKKTZx
z1f%cdL{4$WATSvTCKJG9I+)A_k&^?sY`BV3OF*{f7nDry=F(uxNlh(aV3@pz%ZD*y
zGAFmZAQJ-v11kdq0}sRz44IQZa)~q6OjhI;H=GL<V_{%m;Adc9`12nERzk&LdUc@u
zbzr@FCvW5ymplm-gQ;<V^3Q?QJen-XBQE&~Dh5*%2IYSTsWJQq<-ufApnN`1$S^Q4
zfLtYn<SM1fjy&SLI!Ll2lWTciGa60K<TdAfzy;C%VDd^{bH<{{4|(kwizX}bxic=D
woXKa-C^>l{pFN}5<cECqj0Yws^1Czsn7oqToHGNeuXyrHesjhflNANj0nwp_YybcN

delta 610
zcmZorJfSc_gOOvRrngesan}b-4Bf70__rVEJpO`#fq@~d)AiAD*C!yRN3ZXLiRY(B
z9(TRN$iTqh(HnZF+x3Uz4i*rn^WrWh1_p+GAQ`CE<{$q{g*|$0L3+Vv?fC!y|Nqyl
zJ3s;_4}-|!{N(J^lKA4(qO#P|qRGn{jW$1Ev|<C9$S}E$QE9Ryhx}x74pm_jkhzY0
z0&Psryll++j6CcdlO1^_CmZmwOzz=0!)P)&k~5vrX>uZ`_~Zke5{!Nz7Go%wi~*BL
zlLNVeC$HyH=S(dDS({%_GWiad52N#BO>X(g72E=n1t1qOFff4p!OFnEzzyY>P8Q@A
zH*A6OKyKq_U|{$I^34DL|0h7jVY=j@{HY*aj4LN!<QA9Q2^E8>F@^H?fz)^&h4Nss
zHc<XmC=Iev5Xr`uNa8|B;)0VW@`$U-f<g+(7d31U<w{U-kZC-VxAMGZG?~1R*PQbJ
z7exNV<cGZGOeKty3pvCl8}Mnsm<4<Wj0+|&<TGcKn0%AZp2?I0qJlqzv19T~es{(P
clOOV%a|S?-$(^hyV9vRK2V!XAWJNxC06pWBUjP6A

-- 
GitLab