--- rpl/src/rpl.h 2013/02/25 11:24:02 1.194 +++ rpl/src/rpl.h 2013/03/16 11:31:41 1.207 @@ -1,7 +1,7 @@ /* ================================================================================ - RPL/2 (R) version 4.1.12 - Copyright (C) 1989-2012 Dr. BERTRAND Joël + RPL/2 (R) version 4.1.13 + Copyright (C) 1989-2013 Dr. BERTRAND Joël This file is part of RPL/2. @@ -19,7 +19,6 @@ ================================================================================ */ - #ifndef INCLUSION_RPL #define INCLUSION_RPL @@ -65,6 +64,7 @@ #include #include +#include #include #include #include @@ -186,6 +186,18 @@ # ifndef OPENSSL_NO_WHIRLPOOL # include "openssl/whrlpool.h" # endif +# ifndef OPENSSL_NO_AES +# include "openssl/aes.h" +# endif +# ifndef OPENSSL_NO_CAMELLIA +# include "openssl/camellia.h" +# endif +# ifndef OPENSSL_NO_RC2 +# include "openssl/rc2.h" +# endif +# ifndef OPENSSL_NO_IDEA +# include "openssl/idea.h" +# endif # include "sqlite3.h" # include "sigsegv.h" @@ -953,6 +965,8 @@ pid_t debug_fork(); # define d_ex_instruction_indisponible __erreur(88) # define d_ex_chiffrement __erreur(89) # define d_ex_chiffrement_indisponible __erreur(90) +# define d_ex_longueur_clef_chiffrement __erreur(91) +# define d_ex_taille_message __erreur(92) #endif @@ -1475,8 +1489,6 @@ typedef struct liste_pile_systeme { struct liste_pile_systeme *suivant; - struct_liste_chainee *pointeur_objet_retour; - struct_objet *indice_boucle; struct_objet *limite_indice_boucle; struct_objet *objet_de_test; @@ -1532,7 +1544,7 @@ typedef struct liste_pile_systeme unsigned long adresse_retour; unsigned long niveau_courant; - struct_objet *pointeur_adresse_retour; + struct_liste_chainee *pointeur_objet_retour; } struct_liste_pile_systeme; #endif @@ -3205,8 +3217,11 @@ unsigned char *analyse_algebrique(struct unsigned char *chaine_algebrique, struct_liste_chainee **l_base_liste); unsigned char *analyse_flux(struct_processus *s_etat_processus, unsigned char *flux, long longueur); -unsigned char *recherche_chemin_fichiers_temporaires(struct_processus - *s_etat_processus); +unsigned char *chiffrement(const EVP_CIPHER *type_chiffrement, + logical1 encodage, unsigned char *message, unsigned int + longueur_message, unsigned char *clef, unsigned int longueur_clef, + unsigned char *vecteur_initialisation, + unsigned int *longueur_message_chiffre); unsigned char *compactage(unsigned char *chaine); unsigned char *conversion_majuscule(unsigned char *chaine); unsigned char *creation_nom_fichier(struct_processus *s_etat_processus, @@ -3219,15 +3234,16 @@ unsigned char *formateur(struct_processu unsigned char *formateur_fichier(struct_processus *s_etat_processus, struct_objet *s_objet, struct_objet *s_format, long longueur, long longueur_champ, unsigned char format, - unsigned char type, long *longueur_effective, long *recursivite); + unsigned char type, long *longueur_effective, long *recursivite, + logical1 export_fichier); unsigned char *formateur_flux(struct_processus *s_etat_processus, unsigned char *donnees, long *longueur); unsigned char *formateur_fichier_nombre(struct_processus *s_etat_processus, void *valeur_numerique, unsigned char type, long longueur, long longueur_champ, unsigned char format); unsigned char *formateur_fichier_binaire_nombre(struct_processus - *s_etat_processus, void *valeur_numerique, unsigned char type, - long longueur, long *longueur_conversion); + *s_etat_processus, void *valeur_numerique, unsigned char type_entree, + unsigned char type, long longueur, long *longueur_conversion); unsigned char *formateur_fichier_reel(struct_processus *s_etat_processus, void *valeur_numerique, unsigned char type, long longueur, long longueur_champ, unsigned char format); @@ -3239,6 +3255,8 @@ unsigned char *messages(struct_processus unsigned char *pointeur_ieme_caractere(struct_processus *s_etat_processus, unsigned char *chaine, integer8 position); unsigned char *purification_chaine(unsigned char *chaine); +unsigned char *recherche_chemin_fichiers_temporaires(struct_processus + *s_etat_processus); unsigned char *reencodage(struct_processus *s_etat_processus, unsigned char *chaine_entree, unsigned char *codage_entree, unsigned char *codage_sortie); @@ -3312,6 +3330,7 @@ logical1 sequenceur_optimise(struct_proc logical1 depassement_addition(integer8 *a, integer8 *b, integer8 *resultat); logical1 depassement_multiplication(integer8 *a, integer8 *b, integer8 *resultat); +logical1 depassement_soustraction(integer8 *a, integer8 *b, integer8 *resultat); logical1 depassement_puissance(integer8 *a, integer8 *b, integer8 *resultat); #ifndef RPLARGS @@ -3444,6 +3463,8 @@ struct_objet *allocation(struct_processu #ifndef RPLARGS struct_objet *formateur_date(struct_processus *s_etat_processus, struct timeval *temps); +struct_objet *lecture_fichier_non_formate(struct_processus *s_etat_processus, + void *argument, integer8 longueur_buffer, logical1 recursivite); struct_objet *lecture_pipe(struct_processus *s_etat_processus, int pipe); struct_objet *parametres_sql(struct_processus *s_etat_processus, struct_objet *s_parametres);