--- rpl/src/rpl.h 2011/11/26 13:05:03 1.145 +++ rpl/src/rpl.h 2011/11/30 17:21:07 1.149 @@ -338,6 +338,7 @@ union semun // SIGTSTP // SIGCONT // SIGPIPE +// SIGUSR1 et SIGUSR2 sont utilisé par libsigsegv. # define SIGTEST SIGUSR1 @@ -2192,6 +2193,10 @@ typedef struct processus struct_liste_chainee *liste_mutexes; pthread_mutex_t protection_liste_mutexes; +/* Drapeau nécessaire à RESTART */ + + volatile logical1 requete_redemarrage; + /* Gestion optimisée de la mémoire */ double estimation_taille_pile_tampon; @@ -2638,6 +2643,7 @@ void instruction_redraw(struct_processus void instruction_relax(struct_processus *s_etat_processus); void instruction_remove(struct_processus *s_etat_processus); void instruction_res(struct_processus *s_etat_processus); +void instruction_restart(struct_processus *s_etat_processus); void instruction_recall(struct_processus *s_etat_processus); void instruction_regv(struct_processus *s_etat_processus); void instruction_repeat(struct_processus *s_etat_processus); @@ -2907,6 +2913,7 @@ void interruption2(int signal); void interruption3(int signal); void interruption4(int signal); void interruption5(int signal); +void interruption6(int signal); void interruption_depassement_pile(int urgence, stackoverflow_context_t scp); void inversion_matrice(struct_processus *s_etat_processus, struct_matrice *s_matrice); @@ -3008,7 +3015,8 @@ complex16 sommation_vecteur_complexe(com */ #ifndef RPLARGS -int rplinit(int argc, char *argv[], unsigned char ***resultats, char *rpl_home); +int rplinit(int argc, char *argv[], char *envp[], + unsigned char ***resultats, char *rpl_home); #endif /* @@ -3121,6 +3129,8 @@ logical1 caracteristiques_fichier(struct unsigned long *unite); logical1 controle(struct_processus *s_etat_processus, unsigned char *fichier, unsigned char *type, unsigned char *somme_candidate); +logical1 controle_integrite(struct_processus *s_etat_processus, + unsigned char *executable_candidat, unsigned char *executable); logical1 creation_variable(struct_processus *s_etat_processus, struct_variable *s_variable, unsigned char autorisation_creation_variable_statique,