Diff for /rpl/src/daemon.c between versions 1.33 and 1.62

version 1.33, 2011/09/20 14:36:28 version 1.62, 2015/02/19 11:01:19
Line 1 Line 1
 /*  /*
 ================================================================================  ================================================================================
   RPL/2 (R) version 4.1.3    RPL/2 (R) version 4.1.21
   Copyright (C) 1989-2011 Dr. BERTRAND Joël    Copyright (C) 1989-2015 Dr. BERTRAND Joël
   
   This file is part of RPL/2.    This file is part of RPL/2.
   
Line 70  lancement_daemon(struct_processus *s_eta Line 70  lancement_daemon(struct_processus *s_eta
     if (pid > 0)      if (pid > 0)
     {      {
         // Fin du processus père.          // Fin du processus père.
   
           // À noter : dans le cas où l'on utilise l'émulation des
           // sémaphores anonymes POSIX ou la sémantique SysV, il faut
           // détruire les sémaphores et les recréer dans le processus fils.
   
   #       ifndef SEMAPHORES_NOMMES
           sem_post(&((*s_etat_processus).semaphore_fork));
           sem_destroy(&((*s_etat_processus).semaphore_fork));
   #       else
           sem_post((*s_etat_processus).semaphore_fork);
           sem_destroy3((*s_etat_processus).semaphore_fork, getpid(),
                   pthread_self(), SEM_FORK);
   #       endif
   
         destruction_queue_signaux(s_etat_processus);          destruction_queue_signaux(s_etat_processus);
         _exit(EXIT_SUCCESS);          _exit(EXIT_SUCCESS);
     }      }
Line 88  lancement_daemon(struct_processus *s_eta Line 102  lancement_daemon(struct_processus *s_eta
         return;          return;
     }      }
   
   #   pragma GCC diagnostic push
   #   pragma GCC diagnostic ignored "-Wunused-result"
     freopen("/dev/null", "r", stdin);      freopen("/dev/null", "r", stdin);
     freopen("/dev/null", "w", stdout);      freopen("/dev/null", "w", stdout);
     freopen("/dev/null", "w", stderr);      freopen("/dev/null", "w", stderr);
   #   pragma GCC diagnostic pop
   
     /*      /*
      * Second fork pour ne plus être un session leader.       * Second fork pour ne plus être un session leader.

Removed from v.1.33  
changed lines
  Added in v.1.62


CVSweb interface <joel.bertrand@systella.fr>