version 1.132, 2011/09/21 09:09:22
|
version 1.136, 2011/10/10 10:58:12
|
Line 1
|
Line 1
|
/* |
/* |
================================================================================ |
================================================================================ |
RPL/2 (R) version 4.1.3 |
RPL/2 (R) version 4.1.4 |
Copyright (C) 1989-2011 Dr. BERTRAND Joël |
Copyright (C) 1989-2011 Dr. BERTRAND Joël |
|
|
This file is part of RPL/2. |
This file is part of RPL/2. |
Line 43
|
Line 43
|
#ifdef OS2 |
#ifdef OS2 |
# ifndef __RPLCAS |
# ifndef __RPLCAS |
# define _BSD_SOURCE |
# define _BSD_SOURCE |
# define _XOPEN_SOURCE 600 |
|
# endif |
# endif |
|
|
# include <types.h> |
# include <types.h> |
Line 99
|
Line 98
|
# endif |
# endif |
|
|
# include <pwd.h> |
# include <pwd.h> |
# include <sys/shm.h> |
# ifdef SHARED_MEMORY |
|
# include <sys/shm.h> |
|
# endif |
|
|
# ifndef IPCS_SYSV |
# ifndef IPCS_SYSV |
# include <semaphore.h> |
# include <semaphore.h> |
Line 163
|
Line 164
|
# include "openssl/evp.h" |
# include "openssl/evp.h" |
# include "sqlite3.h" |
# include "sqlite3.h" |
# include "sigsegv.h" |
# include "sigsegv.h" |
|
# ifdef OS2 |
|
// Bug de libsigsegv |
|
# undef HAVE_STACK_OVERFLOW_RECOVERY |
|
# endif |
|
|
# define HAVE_INLINE |
# define HAVE_INLINE |
# define GSL_RANGE_CHECK_OFF |
# define GSL_RANGE_CHECK_OFF |
Line 242 enum signaux_rpl
|
Line 247 enum signaux_rpl
|
// Elle est projetée dans un segment de mémoire partagée pour qu'elle soit |
// Elle est projetée dans un segment de mémoire partagée pour qu'elle soit |
// accessible à la fois du père et des fils. |
// accessible à la fois du père et des fils. |
|
|
|
#ifndef RPLARGS |
typedef struct queue_signaux |
typedef struct queue_signaux |
{ |
{ |
# ifndef IPCS_SYSV |
# ifndef IPCS_SYSV |
Line 262 typedef struct queue_signaux
|
Line 268 typedef struct queue_signaux
|
} queue[LONGUEUR_QUEUE_SIGNAUX]; |
} queue[LONGUEUR_QUEUE_SIGNAUX]; |
} struct_queue_signaux; |
} struct_queue_signaux; |
|
|
#ifndef RPLARGS |
|
# ifndef MAIN_RPL |
# ifndef MAIN_RPL |
extern struct_queue_signaux *s_queue_signaux; |
extern struct_queue_signaux *s_queue_signaux; |
extern int f_queue_signaux; |
extern int f_queue_signaux; |
Line 2939 void retrait_thread(struct_processus *s_
|
Line 2944 void retrait_thread(struct_processus *s_
|
void retrait_thread_surveillance(struct_processus *s_etat_processus, |
void retrait_thread_surveillance(struct_processus *s_etat_processus, |
struct_descripteur_thread *s_argument_thread); |
struct_descripteur_thread *s_argument_thread); |
void rplcore(struct_processus *s_etat_processus); |
void rplcore(struct_processus *s_etat_processus); |
|
#endif |
|
|
void scrutation_injection(struct_processus *s_etat_processus); |
void scrutation_injection(struct_processus *s_etat_processus); |
|
|
|
#ifndef RPLARGS |
void scrutation_interruptions(struct_processus *s_etat_processus); |
void scrutation_interruptions(struct_processus *s_etat_processus); |
void sf(struct_processus *s_etat_processus, unsigned char indice_drapeau); |
void sf(struct_processus *s_etat_processus, unsigned char indice_drapeau); |
void *surveillance_processus(void *argument); |
void *surveillance_processus(void *argument); |
Line 3066 unsigned char *compactage(unsigned char
|
Line 3075 unsigned char *compactage(unsigned char
|
unsigned char *conversion_majuscule(unsigned char *chaine); |
unsigned char *conversion_majuscule(unsigned char *chaine); |
unsigned char *creation_nom_fichier(struct_processus *s_etat_processus, |
unsigned char *creation_nom_fichier(struct_processus *s_etat_processus, |
unsigned char *chemin); |
unsigned char *chemin); |
|
unsigned char *date_compilation(); |
unsigned char *extraction_chaine(unsigned char *chaine, unsigned long i, |
unsigned char *extraction_chaine(unsigned char *chaine, unsigned long i, |
unsigned long j); |
unsigned long j); |
unsigned char *formateur(struct_processus *s_etat_processus, long offset, |
unsigned char *formateur(struct_processus *s_etat_processus, long offset, |
Line 3195 ssize_t write_atomic(struct_processus *s
|
Line 3205 ssize_t write_atomic(struct_processus *s
|
|
|
int alsprintf(unsigned char **strp, const char *fmt, ...); |
int alsprintf(unsigned char **strp, const char *fmt, ...); |
int interruption_violation_access(void *adresse_fautive, int gravite); |
int interruption_violation_access(void *adresse_fautive, int gravite); |
|
#ifndef RPLARGS |
int liste_variables(struct_processus *s_etat_processus, |
int liste_variables(struct_processus *s_etat_processus, |
struct_tableau_variables *tableau, int position, |
struct_tableau_variables *tableau, int position, |
struct_arbre_variables *l_element_courant); |
struct_arbre_variables *l_element_courant); |
int nombre_variables(struct_processus *s_etat_processus, |
int nombre_variables(struct_processus *s_etat_processus, |
struct_arbre_variables *l_element_courant); |
struct_arbre_variables *l_element_courant); |
|
#endif |
int tex_fprintf(struct_processus *s_etat_processus, |
int tex_fprintf(struct_processus *s_etat_processus, |
file *flux, const char *format, ...); |
file *flux, const char *format, ...); |
int transliterated_fprintf(struct_processus *s_etat_processus, file *flux, |
int transliterated_fprintf(struct_processus *s_etat_processus, file *flux, |
Line 3281 struct_descripteur_fichier *descripteur_
|
Line 3293 struct_descripteur_fichier *descripteur_
|
struct_objet *copie_objet(struct_processus *s_etat_processus, |
struct_objet *copie_objet(struct_processus *s_etat_processus, |
struct_objet *s_objet, unsigned char type); |
struct_objet *s_objet, unsigned char type); |
|
|
#ifndef RPLARGS |
|
struct_objet *allocation(struct_processus *s_etat_processus, enum t_type type); |
struct_objet *allocation(struct_processus *s_etat_processus, enum t_type type); |
|
#ifndef RPLARGS |
struct_objet *formateur_date(struct_processus *s_etat_processus, |
struct_objet *formateur_date(struct_processus *s_etat_processus, |
struct timeval *temps); |
struct timeval *temps); |
struct_objet *lecture_pipe(struct_processus *s_etat_processus, int pipe); |
struct_objet *lecture_pipe(struct_processus *s_etat_processus, int pipe); |