Diff for /rpl/src/instructions_c4.c between versions 1.4 and 1.6

version 1.4, 2010/03/04 10:17:50 version 1.6, 2010/03/05 11:20:08
Line 472  instruction_convert(struct_processus *s_ Line 472  instruction_convert(struct_processus *s_
     struct_objet                *s_objet_argument_3;      struct_objet                *s_objet_argument_3;
   
     unsigned char               *commande;      unsigned char               *commande;
       unsigned char               *executable_candidat;
     unsigned char               ligne[1024 + 1];      unsigned char               ligne[1024 + 1];
     unsigned char               *tampon_instruction;      unsigned char               *tampon_instruction;
   
Line 543  instruction_convert(struct_processus *s_ Line 544  instruction_convert(struct_processus *s_
             (((*s_objet_argument_3).type == INT) ||              (((*s_objet_argument_3).type == INT) ||
             ((*s_objet_argument_3).type == REL)))              ((*s_objet_argument_3).type == REL)))
     {      {
         longueur_chaine = strlen(ds_rplconvert_commande) - 9          if ((*s_etat_processus).rpl_home == NULL)
                 + strlen((unsigned char *) (*s_objet_argument_1).objet)  
                 + strlen((unsigned char *) (*s_objet_argument_2).objet)  
                 + (2 * strlen(d_exec_path));  
   
         if ((commande = malloc((longueur_chaine + 1) * sizeof(unsigned char)))  
                 == NULL)  
         {          {
             (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;              longueur_chaine = strlen(ds_rplconvert_commande) - 9
             return;                      + strlen((unsigned char *) (*s_objet_argument_1).objet)
                       + strlen((unsigned char *) (*s_objet_argument_2).objet)
                       + (2 * strlen(d_exec_path));
   
               if ((commande = malloc((longueur_chaine + 1) *
                       sizeof(unsigned char))) == NULL)
               {
                   (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;
                   return;
               }
   
               sprintf(commande, ds_rplconvert_commande, d_exec_path, d_exec_path,
                       (unsigned char *) (*s_objet_argument_2).objet,
                       (unsigned char *) (*s_objet_argument_1).objet);
   
               if (alsprintf(&executable_candidat, "%s/bin/rplconvert",
                       d_exec_path) < 0)
               {
                   (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;
                   return;
               }
   
               if (controle(s_etat_processus, executable_candidat, "md5",
                       rplconvert_md5) != d_vrai)
               {
                   (*s_etat_processus).erreur_systeme = d_es_somme_controle;
                   return;
               }
   
               if (controle(s_etat_processus, executable_candidat, "sha1",
                       rplconvert_sha1) != d_vrai)
               {
                   (*s_etat_processus).erreur_systeme = d_es_somme_controle;
                   return;
               }
   
               free(executable_candidat);
         }          }
           else
           {
               longueur_chaine = strlen(ds_rplconvert_commande) - 9
                       + strlen((unsigned char *) (*s_objet_argument_1).objet)
                       + strlen((unsigned char *) (*s_objet_argument_2).objet)
                       + (2 * strlen((*s_etat_processus).rpl_home));
   
               if ((commande = malloc((longueur_chaine + 1) *
                       sizeof(unsigned char))) == NULL)
               {
                   (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;
                   return;
               }
   
               sprintf(commande, ds_rplconvert_commande,
                       (*s_etat_processus).rpl_home, (*s_etat_processus).rpl_home,
                       (unsigned char *) (*s_objet_argument_2).objet,
                       (unsigned char *) (*s_objet_argument_1).objet);
   
               if (alsprintf(&executable_candidat, "%s/bin/rplconvert",
                       (*s_etat_processus).rpl_home) < 0)
               {
                   (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;
                   return;
               }
   
               if (controle(s_etat_processus, executable_candidat, "md5",
                       rplconvert_md5) != d_vrai)
               {
                   (*s_etat_processus).erreur_systeme = d_es_somme_controle;
                   return;
               }
   
               if (controle(s_etat_processus, executable_candidat, "sha1",
                       rplconvert_sha1) != d_vrai)
               {
                   (*s_etat_processus).erreur_systeme = d_es_somme_controle;
                   return;
               }
   
         sprintf(commande, ds_rplconvert_commande, d_exec_path, d_exec_path,              free(executable_candidat);
                 (unsigned char *) (*s_objet_argument_2).objet,          }
                 (unsigned char *) (*s_objet_argument_1).objet);  
   
         if ((pipe = popen(commande, "r")) == NULL)          if ((pipe = popen(commande, "r")) == NULL)
         {          {

Removed from v.1.4  
changed lines
  Added in v.1.6


CVSweb interface <joel.bertrand@systella.fr>