Explorar o código

:bug: Gestion des déconnexion sauvage

Arthur Brandao %!s(int64=6) %!d(string=hai) anos
pai
achega
9ae2123a3d
Modificáronse 4 ficheiros con 28 adicións e 0 borrados
  1. 1 0
      Serveur/bomberstudent_server.c
  2. 26 0
      Serveur/bomberstudent_server.log
  3. 1 0
      Serveur/main.c
  4. BIN=BIN
      Serveur/test

+ 1 - 0
Serveur/bomberstudent_server.c

@@ -67,6 +67,7 @@ void* client_thread(void* data) {
         //Si trop d'erreur d'affilé
         if (nbError == NBERRORRESET) {
             //Fermeture du client et fin du thread
+            adderror("Client non accessible, fin de la connexion");
             remove_client(cliId);
             break;
         }

+ 26 - 0
Serveur/bomberstudent_server.log

@@ -39,3 +39,29 @@ Erreur dans le fichier bomberstudent_server.c ligne 293, Impossible de repondre
 Erreur dans le fichier bomberstudent_server.c ligne 39, Impossible d'avertir le client de l'erreur
 Erreur dans le fichier bomberstudent_server.c ligne 65, Erreur lors de la reception d'une requete du client
 ----- Fin log processus 8198 (temps en seconde : 28) -----
+----- Log processus 8549 (timestamp : 1542997758) -----
+Erreur dans le fichier bomberstudent_server.c ligne 226, Methode incorrect
+Erreur dans le fichier bomberstudent_server.c ligne 62, Erreur lors de la reception d'une requete du client
+Erreur dans le fichier bomberstudent_server.c ligne 226, Methode incorrect
+Erreur dans le fichier server_tcp.c ligne 78, Impossible d'envoyer les données : Broken pipe
+Erreur dans le fichier bomberstudent_server.c ligne 290, Impossible de repondre à la requete du client
+Erreur dans le fichier bomberstudent_server.c ligne 37, Impossible d'avertir le client de l'erreur
+Erreur dans le fichier bomberstudent_server.c ligne 62, Erreur lors de la reception d'une requete du client
+Erreur dans le fichier bomberstudent_server.c ligne 226, Methode incorrect
+Erreur dans le fichier server_tcp.c ligne 78, Impossible d'envoyer les données : Broken pipe
+Erreur dans le fichier bomberstudent_server.c ligne 290, Impossible de repondre à la requete du client
+Erreur dans le fichier bomberstudent_server.c ligne 37, Impossible d'avertir le client de l'erreur
+Erreur dans le fichier bomberstudent_server.c ligne 62, Erreur lors de la reception d'une requete du client
+Erreur dans le fichier bomberstudent_server.c ligne 226, Methode incorrect
+Erreur dans le fichier bomberstudent_server.c ligne 62, Erreur lors de la reception d'une requete du client
+Erreur dans le fichier bomberstudent_server.c ligne 226, Methode incorrect
+Erreur dans le fichier server_tcp.c ligne 78, Impossible d'envoyer les données : Broken pipe
+Erreur dans le fichier bomberstudent_server.c ligne 290, Impossible de repondre à la requete du client
+Erreur dans le fichier bomberstudent_server.c ligne 37, Impossible d'avertir le client de l'erreur
+Erreur dans le fichier bomberstudent_server.c ligne 62, Erreur lors de la reception d'une requete du client
+Erreur dans le fichier bomberstudent_server.c ligne 226, Methode incorrect
+Erreur dans le fichier server_tcp.c ligne 78, Impossible d'envoyer les données : Broken pipe
+Erreur dans le fichier bomberstudent_server.c ligne 290, Impossible de repondre à la requete du client
+Erreur dans le fichier bomberstudent_server.c ligne 37, Impossible d'avertir le client de l'erreur
+Erreur dans le fichier bomberstudent_server.c ligne 62, Erreur lors de la reception d'une requete du client
+----- Fin log processus 8549 (temps en seconde : 34) -----

+ 1 - 0
Serveur/main.c

@@ -52,6 +52,7 @@ int main(){
     ini_server();
     //Gestion des signaux
     signal(SIGINT, handler);
+    signal(SIGPIPE, SIG_IGN); //Ignore les signaux SIGPIPE (on est pas sur d'en recevoir à chaque coupure socket + Impossible de determnier quelle socket est fermé (on laisse la méthode du timeout pour la trouver)
     //Ajout des handlers
     /*add_handler("POST", "aze/rty", handler);*/
     //Lance le serveur UDP

BIN=BIN
Serveur/test