version 1.86, 2011/09/16 09:09:35
|
version 1.89, 2011/09/20 07:16:40
|
Line 23
|
Line 23
|
#define MAIN_RPL |
#define MAIN_RPL |
#include "rpl-conv.h" |
#include "rpl-conv.h" |
|
|
#ifdef IPCS_SYSV |
|
#ifndef OS2 |
|
unsigned char *chemin_semaphores_SysV; |
|
#endif |
|
#endif |
|
|
|
|
|
/* |
/* |
================================================================================ |
================================================================================ |
Line 118 rplinit(int argc, char *argv[], unsigned
|
Line 112 rplinit(int argc, char *argv[], unsigned
|
# ifndef SEMAPHORES_NOMMES |
# ifndef SEMAPHORES_NOMMES |
sem_init(&semaphore_gestionnaires_signaux, 0, 0); |
sem_init(&semaphore_gestionnaires_signaux, 0, 0); |
# else |
# else |
semaphore_gestionnaires_signaux = sem_init2(0, sem_gestionnaires_signaux); |
semaphore_gestionnaires_signaux = sem_init2(0, getpid()); |
|
|
if (semaphore_gestionnaires_signaux == SEM_FAILED) |
if (semaphore_gestionnaires_signaux == SEM_FAILED) |
{ |
{ |
Line 225 rplinit(int argc, char *argv[], unsigned
|
Line 219 rplinit(int argc, char *argv[], unsigned
|
(*s_etat_processus).chemin_fichiers_temporaires = |
(*s_etat_processus).chemin_fichiers_temporaires = |
recherche_chemin_fichiers_temporaires(s_etat_processus); |
recherche_chemin_fichiers_temporaires(s_etat_processus); |
|
|
# ifdef IPCS_SYSV |
|
# ifndef OS2 |
|
chemin_semaphores_SysV = |
|
(*s_etat_processus).chemin_fichiers_temporaires; |
|
# endif |
|
# endif |
|
|
|
insertion_thread(s_etat_processus, d_vrai); |
insertion_thread(s_etat_processus, d_vrai); |
creation_queue_signaux(s_etat_processus); |
creation_queue_signaux(s_etat_processus); |
|
|
Line 2639 rplinit(int argc, char *argv[], unsigned
|
Line 2626 rplinit(int argc, char *argv[], unsigned
|
lancement_daemon(s_etat_processus); |
lancement_daemon(s_etat_processus); |
} |
} |
|
|
// A FIXER |
|
// création signaux |
|
if (option_p == d_faux) |
if (option_p == d_faux) |
{ |
{ |
if (setjmp(contexte_initial) == 0) |
if (setjmp(contexte_initial) == 0) |
Line 2683 rplinit(int argc, char *argv[], unsigned
|
Line 2668 rplinit(int argc, char *argv[], unsigned
|
} |
} |
} |
} |
} |
} |
// A FIXER |
|
// destruction signaux |
|
} |
} |
|
|
liberation(s_etat_processus, (*s_etat_processus).at_exit); |
liberation(s_etat_processus, (*s_etat_processus).at_exit); |
Line 3504 rplinit(int argc, char *argv[], unsigned
|
Line 3487 rplinit(int argc, char *argv[], unsigned
|
sem_destroy(&semaphore_gestionnaires_signaux); |
sem_destroy(&semaphore_gestionnaires_signaux); |
# else |
# else |
sem_post(semaphore_gestionnaires_signaux); |
sem_post(semaphore_gestionnaires_signaux); |
sem_destroy2(semaphore_gestionnaires_signaux, sem_gestionnaires_signaux); |
sem_destroy2(semaphore_gestionnaires_signaux, getpid()); |
# endif |
# endif |
|
|
destruction_queue_signaux(s_etat_processus); |
destruction_queue_signaux(s_etat_processus); |