Diff for /rpl/src/chainage.c between versions 1.31 and 1.77

version 1.31, 2011/06/22 13:26:57 version 1.77, 2020/01/10 11:15:41
Line 1 Line 1
 /*  /*
 ================================================================================  ================================================================================
   RPL/2 (R) version 4.1.0.prerelease.3    RPL/2 (R) version 4.1.32
   Copyright (C) 1989-2011 Dr. BERTRAND Joël    Copyright (C) 1989-2020 Dr. BERTRAND Joël
   
   This file is part of RPL/2.    This file is part of RPL/2.
   
Line 45  chainage(struct_processus *s_etat_proces Line 45  chainage(struct_processus *s_etat_proces
   
     int                     caractere;      int                     caractere;
     int                     erreur;      int                     erreur;
     int                     erreur_os;  
   
     logical1                drapeau_fin;      logical1                drapeau_fin;
       logical1                erreur_os;
     logical1                existence;      logical1                existence;
     logical1                initialisation;      logical1                initialisation;
     logical1                ouverture;      logical1                ouverture;
     logical1                presence_chaine;      logical1                presence_chaine;
   
     long                    i;      integer8                i;
     long                    nombre_caracteres_source;      integer8                nombre_caracteres_source;
   
     unsigned char           *commande;      unsigned char           *commande;
     unsigned char           *executable_candidat;      unsigned char           *executable_candidat;
Line 138  chainage(struct_processus *s_etat_proces Line 138  chainage(struct_processus *s_etat_proces
                     d_exec_path, (*s_etat_processus).nom_fichier_source,                      d_exec_path, (*s_etat_processus).nom_fichier_source,
                     d_exec_path, d_exec_path, d_locale, nom_fichier_temporaire);                      d_exec_path, d_exec_path, d_locale, nom_fichier_temporaire);
   
             if (alsprintf(&executable_candidat, "%s/bin/rpliconv",              if (alsprintf(s_etat_processus, &executable_candidat,
                     d_exec_path) < 0)                      "%s/bin/rpliconv", d_exec_path) < 0)
             {              {
                 (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;                  (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;
                 return(d_erreur);                  return(d_erreur);
             }              }
   
             if (controle(s_etat_processus, executable_candidat, "md5",              if (controle_integrite(s_etat_processus, executable_candidat,
                     rpliconv_md5) != d_vrai)                          "rpliconv") != 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;                  (*s_etat_processus).erreur_systeme = d_es_somme_controle;
                 return(d_erreur);                  return(d_erreur);
Line 161  chainage(struct_processus *s_etat_proces Line 154  chainage(struct_processus *s_etat_proces
   
             free(executable_candidat);              free(executable_candidat);
   
             if (alsprintf(&executable_candidat, "%s/bin/rplfile",              if (alsprintf(s_etat_processus, &executable_candidat,
                     d_exec_path) < 0)                      "%s/bin/rplfile", d_exec_path) < 0)
             {              {
                 (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;                  (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;
                 return(d_erreur);                  return(d_erreur);
             }              }
   
             if (controle(s_etat_processus, executable_candidat, "md5",              if (controle_integrite(s_etat_processus, executable_candidat,
                     rplfile_md5) != d_vrai)                      "rplfile") != 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;                  (*s_etat_processus).erreur_systeme = d_es_somme_controle;
                 return(d_erreur);                  return(d_erreur);
Line 184  chainage(struct_processus *s_etat_proces Line 170  chainage(struct_processus *s_etat_proces
   
             free(executable_candidat);              free(executable_candidat);
   
             if (alsprintf(&executable_candidat, "%s/bin/rplpp",              if (alsprintf(s_etat_processus, &executable_candidat,
                     d_exec_path) < 0)                      "%s/bin/rplpp", d_exec_path) < 0)
             {              {
                 (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;                  (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;
                 return(d_erreur);                  return(d_erreur);
             }              }
   
             if (controle(s_etat_processus, executable_candidat, "md5",              if (controle_integrite(s_etat_processus, executable_candidat,
                     rplpp_md5) != d_vrai)                      "rplpp") != 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;                  (*s_etat_processus).erreur_systeme = d_es_somme_controle;
                 return(d_erreur);                  return(d_erreur);
Line 207  chainage(struct_processus *s_etat_proces Line 186  chainage(struct_processus *s_etat_proces
   
             free(executable_candidat);              free(executable_candidat);
   
             if (alsprintf(&executable_candidat, "%s/bin/rplawk",              if (alsprintf(s_etat_processus, &executable_candidat,
                     d_exec_path) < 0)                      "%s/bin/rplawk", d_exec_path) < 0)
             {              {
                 (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;                  (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;
                 return(d_erreur);                  return(d_erreur);
             }              }
   
             if (controle(s_etat_processus, executable_candidat, "md5",              if (controle_integrite(s_etat_processus, executable_candidat,
                     rplawk_md5) != d_vrai)                      "rplawk") != d_vrai)
             {  
                 (*s_etat_processus).erreur_systeme = d_es_somme_controle;  
                 return(d_erreur);  
             }  
   
             if (controle(s_etat_processus, executable_candidat, "sha1",  
                     rplawk_sha1) != d_vrai)  
             {              {
                 (*s_etat_processus).erreur_systeme = d_es_somme_controle;                  (*s_etat_processus).erreur_systeme = d_es_somme_controle;
                 return(d_erreur);                  return(d_erreur);
Line 256  chainage(struct_processus *s_etat_proces Line 228  chainage(struct_processus *s_etat_proces
                     (*s_etat_processus).rpl_home,                      (*s_etat_processus).rpl_home,
                     d_locale, nom_fichier_temporaire);                      d_locale, nom_fichier_temporaire);
   
             if (alsprintf(&executable_candidat, "%s/bin/rpliconv",              if (alsprintf(s_etat_processus, &executable_candidat,
                     (*s_etat_processus).rpl_home) < 0)                      "%s/bin/rpliconv", (*s_etat_processus).rpl_home) < 0)
             {              {
                 (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;                  (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;
                 return(d_erreur);                  return(d_erreur);
             }              }
   
             if (controle(s_etat_processus, executable_candidat, "md5",              if (controle_integrite(s_etat_processus, executable_candidat,
                     rpliconv_md5) != d_vrai)                      "rpliconv") != 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;                  (*s_etat_processus).erreur_systeme = d_es_somme_controle;
                 return(d_erreur);                  return(d_erreur);
Line 279  chainage(struct_processus *s_etat_proces Line 244  chainage(struct_processus *s_etat_proces
   
             free(executable_candidat);              free(executable_candidat);
   
             if (alsprintf(&executable_candidat, "%s/bin/rplfile",              if (alsprintf(s_etat_processus, &executable_candidat,
                     (*s_etat_processus).rpl_home) < 0)                      "%s/bin/rplfile", (*s_etat_processus).rpl_home) < 0)
             {              {
                 (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;                  (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;
                 return(d_erreur);                  return(d_erreur);
             }              }
   
             if (controle(s_etat_processus, executable_candidat, "md5",              if (controle_integrite(s_etat_processus, executable_candidat,
                     rplfile_md5) != d_vrai)                      "rplfile") != 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;                  (*s_etat_processus).erreur_systeme = d_es_somme_controle;
                 return(d_erreur);                  return(d_erreur);
Line 302  chainage(struct_processus *s_etat_proces Line 260  chainage(struct_processus *s_etat_proces
   
             free(executable_candidat);              free(executable_candidat);
   
             if (alsprintf(&executable_candidat, "%s/bin/rplpp",              if (alsprintf(s_etat_processus, &executable_candidat,
                     (*s_etat_processus).rpl_home) < 0)                      "%s/bin/rplpp", (*s_etat_processus).rpl_home) < 0)
             {              {
                 (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;                  (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;
                 return(d_erreur);                  return(d_erreur);
             }              }
   
             if (controle(s_etat_processus, executable_candidat, "md5",              if (controle_integrite(s_etat_processus, executable_candidat,
                     rplpp_md5) != d_vrai)                      "rplpp") != 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;                  (*s_etat_processus).erreur_systeme = d_es_somme_controle;
                 return(d_erreur);                  return(d_erreur);
Line 325  chainage(struct_processus *s_etat_proces Line 276  chainage(struct_processus *s_etat_proces
   
             free(executable_candidat);              free(executable_candidat);
   
             if (alsprintf(&executable_candidat, "%s/bin/rplawk",              if (alsprintf(s_etat_processus, &executable_candidat,
                     (*s_etat_processus).rpl_home) < 0)                      "%s/bin/rplawk", (*s_etat_processus).rpl_home) < 0)
             {              {
                 (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;                  (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;
                 return(d_erreur);                  return(d_erreur);
             }              }
   
             if (controle(s_etat_processus, executable_candidat, "md5",              if (controle_integrite(s_etat_processus, executable_candidat,
                     rplawk_md5) != d_vrai)                      "rplawk") != d_vrai)
             {  
                 (*s_etat_processus).erreur_systeme = d_es_somme_controle;  
                 return(d_erreur);  
             }  
   
             if (controle(s_etat_processus, executable_candidat, "sha1",  
                     rplawk_sha1) != d_vrai)  
             {              {
                 (*s_etat_processus).erreur_systeme = d_es_somme_controle;                  (*s_etat_processus).erreur_systeme = d_es_somme_controle;
                 return(d_erreur);                  return(d_erreur);
Line 389  chainage(struct_processus *s_etat_proces Line 333  chainage(struct_processus *s_etat_proces
         }          }
   
         (*s_etat_processus).definitions_chainees = (unsigned char *)          (*s_etat_processus).definitions_chainees = (unsigned char *)
                 malloc((nombre_caracteres_source + 1) * sizeof(unsigned char));                  malloc((((size_t) nombre_caracteres_source) + 1)
                   * sizeof(unsigned char));
                   
         if ((*s_etat_processus).definitions_chainees == NULL)          if ((*s_etat_processus).definitions_chainees == NULL)
         {          {
Line 472  chainage(struct_processus *s_etat_proces Line 417  chainage(struct_processus *s_etat_proces
                         }                          }
                     }                      }
   
                     if ((((*s_etat_processus).definitions_chainees)[i] =                      if (((int) (((*s_etat_processus).definitions_chainees)[i] =
                             caractere) == '\"')                              ((unsigned char) caractere))) == '\"')
                     {                      {
                         if (i > 0)                          if (i > 0)
                         {                          {
Line 509  chainage(struct_processus *s_etat_proces Line 454  chainage(struct_processus *s_etat_proces
         }          }
   
         (*s_etat_processus).longueur_definitions_chainees =          (*s_etat_processus).longueur_definitions_chainees =
                 strlen((*s_etat_processus).definitions_chainees);                  (integer8) strlen((*s_etat_processus).definitions_chainees);
   
         if (fclose(f_source) != 0)          if (fclose(f_source) != 0)
         {          {
Line 543  chainage(struct_processus *s_etat_proces Line 488  chainage(struct_processus *s_etat_proces
   
     if (((*s_etat_processus).definitions_chainees =      if (((*s_etat_processus).definitions_chainees =
             realloc((*s_etat_processus).definitions_chainees,              realloc((*s_etat_processus).definitions_chainees,
             ((*s_etat_processus).longueur_definitions_chainees + 1) *              (((size_t) (*s_etat_processus).longueur_definitions_chainees) + 1)
             sizeof(unsigned char))) == NULL)              * sizeof(unsigned char))) == NULL)
     {      {
         (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;          (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;
         return(d_erreur);          return(d_erreur);
Line 568  chainage(struct_processus *s_etat_proces Line 513  chainage(struct_processus *s_etat_proces
 */  */
   
 unsigned char *  unsigned char *
 compactage(unsigned char *chaine)  compactage(struct_processus *s_etat_processus, unsigned char *chaine)
 {  {
     logical1        drapeau_fin;      logical1        drapeau_fin;
     logical1        presence_chaine;      logical1        presence_chaine;

Removed from v.1.31  
changed lines
  Added in v.1.77


CVSweb interface <joel.bertrand@systella.fr>