version 1.5, 2010/03/04 17:42:46
|
version 1.6, 2010/03/05 11:20:08
|
Line 56 chainage(struct_processus *s_etat_proces
|
Line 56 chainage(struct_processus *s_etat_proces
|
long nombre_caracteres_source; |
long nombre_caracteres_source; |
|
|
unsigned char *commande; |
unsigned char *commande; |
|
unsigned char *executable_candidat; |
unsigned char *instructions = "sed -e '1,1s/^#!/\\/\\//g' %s | " |
unsigned char *instructions = "sed -e '1,1s/^#!/\\/\\//g' %s | " |
"%s/bin/%s | " |
"%s/bin/%s | " |
"%s/bin/rpliconv `%s/bin/rplfile " |
"%s/bin/rpliconv `%s/bin/rplfile " |
Line 99 chainage(struct_processus *s_etat_proces
|
Line 100 chainage(struct_processus *s_etat_proces
|
return(d_erreur); |
return(d_erreur); |
} |
} |
|
|
|
// Avant d'exécuter la commande, on teste les sommes de hashage |
|
// des utilitaires de la famille RPL/2. |
|
|
if ((*s_etat_processus).rpl_home == NULL) |
if ((*s_etat_processus).rpl_home == NULL) |
{ |
{ |
if ((commande = (unsigned char *) malloc((strlen(ds_preprocesseur) + |
if ((commande = (unsigned char *) malloc((strlen(ds_preprocesseur) + |
Line 118 chainage(struct_processus *s_etat_proces
|
Line 122 chainage(struct_processus *s_etat_proces
|
d_exec_path, ds_preprocesseur, d_exec_path, d_exec_path, |
d_exec_path, ds_preprocesseur, d_exec_path, d_exec_path, |
d_exec_path, (*s_etat_processus).nom_fichier_source, |
d_exec_path, (*s_etat_processus).nom_fichier_source, |
nom_fichier_temporaire); |
nom_fichier_temporaire); |
|
|
|
if (alsprintf(&executable_candidat, "%s/bin/rpliconv", |
|
d_exec_path) < 0) |
|
{ |
|
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
|
return(d_erreur); |
|
} |
|
|
|
if (controle(s_etat_processus, executable_candidat, "md5", |
|
rpliconv_md5) != d_vrai) |
|
{ |
|
(*s_etat_processus).erreur_systeme = d_es_somme_controle; |
|
return(d_erreur); |
|
} |
|
|
|
if (controle(s_etat_processus, executable_candidat, "sha1", |
|
rpliconv_sha1) != d_vrai) |
|
{ |
|
(*s_etat_processus).erreur_systeme = d_es_somme_controle; |
|
return(d_erreur); |
|
} |
|
|
|
free(executable_candidat); |
|
|
|
if (alsprintf(&executable_candidat, "%s/bin/rplfile", |
|
d_exec_path) < 0) |
|
{ |
|
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
|
return(d_erreur); |
|
} |
|
|
|
if (controle(s_etat_processus, executable_candidat, "md5", |
|
rplfile_md5) != d_vrai) |
|
{ |
|
(*s_etat_processus).erreur_systeme = d_es_somme_controle; |
|
return(d_erreur); |
|
} |
|
|
|
if (controle(s_etat_processus, executable_candidat, "sha1", |
|
rplfile_sha1) != d_vrai) |
|
{ |
|
(*s_etat_processus).erreur_systeme = d_es_somme_controle; |
|
return(d_erreur); |
|
} |
|
|
|
free(executable_candidat); |
|
|
|
if (alsprintf(&executable_candidat, "%s/bin/rplpp", |
|
d_exec_path) < 0) |
|
{ |
|
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
|
return(d_erreur); |
|
} |
|
|
|
if (controle(s_etat_processus, executable_candidat, "md5", |
|
rplpp_md5) != d_vrai) |
|
{ |
|
(*s_etat_processus).erreur_systeme = d_es_somme_controle; |
|
return(d_erreur); |
|
} |
|
|
|
if (controle(s_etat_processus, executable_candidat, "sha1", |
|
rplpp_sha1) != d_vrai) |
|
{ |
|
(*s_etat_processus).erreur_systeme = d_es_somme_controle; |
|
return(d_erreur); |
|
} |
|
|
|
free(executable_candidat); |
} |
} |
else |
else |
{ |
{ |
Line 140 chainage(struct_processus *s_etat_proces
|
Line 213 chainage(struct_processus *s_etat_proces
|
(*s_etat_processus).rpl_home, |
(*s_etat_processus).rpl_home, |
(*s_etat_processus).nom_fichier_source, |
(*s_etat_processus).nom_fichier_source, |
nom_fichier_temporaire); |
nom_fichier_temporaire); |
|
|
|
if (alsprintf(&executable_candidat, "%s/bin/rpliconv", |
|
(*s_etat_processus).rpl_home) < 0) |
|
{ |
|
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
|
return(d_erreur); |
|
} |
|
|
|
if (controle(s_etat_processus, executable_candidat, "md5", |
|
rpliconv_md5) != d_vrai) |
|
{ |
|
(*s_etat_processus).erreur_systeme = d_es_somme_controle; |
|
return(d_erreur); |
|
} |
|
|
|
if (controle(s_etat_processus, executable_candidat, "sha1", |
|
rpliconv_sha1) != d_vrai) |
|
{ |
|
(*s_etat_processus).erreur_systeme = d_es_somme_controle; |
|
return(d_erreur); |
|
} |
|
|
|
free(executable_candidat); |
|
|
|
if (alsprintf(&executable_candidat, "%s/bin/rplfile", |
|
(*s_etat_processus).rpl_home) < 0) |
|
{ |
|
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
|
return(d_erreur); |
|
} |
|
|
|
if (controle(s_etat_processus, executable_candidat, "md5", |
|
rplfile_md5) != d_vrai) |
|
{ |
|
(*s_etat_processus).erreur_systeme = d_es_somme_controle; |
|
return(d_erreur); |
|
} |
|
|
|
if (controle(s_etat_processus, executable_candidat, "sha1", |
|
rplfile_sha1) != d_vrai) |
|
{ |
|
(*s_etat_processus).erreur_systeme = d_es_somme_controle; |
|
return(d_erreur); |
|
} |
|
|
|
free(executable_candidat); |
|
|
|
if (alsprintf(&executable_candidat, "%s/bin/rplpp", |
|
(*s_etat_processus).rpl_home) < 0) |
|
{ |
|
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
|
return(d_erreur); |
|
} |
|
|
|
if (controle(s_etat_processus, executable_candidat, "md5", |
|
rplpp_md5) != d_vrai) |
|
{ |
|
(*s_etat_processus).erreur_systeme = d_es_somme_controle; |
|
return(d_erreur); |
|
} |
|
|
|
if (controle(s_etat_processus, executable_candidat, "sha1", |
|
rplpp_sha1) != d_vrai) |
|
{ |
|
(*s_etat_processus).erreur_systeme = d_es_somme_controle; |
|
return(d_erreur); |
|
} |
|
|
|
free(executable_candidat); |
} |
} |
|
|
if ((f_source = popen(commande, "r")) == NULL) |
if ((f_source = popen(commande, "r")) == NULL) |