Diff for /rpl/src/rpl.h between versions 1.58 and 1.61

version 1.58, 2010/08/17 14:15:20 version 1.61, 2010/08/25 09:43:37
Line 101 Line 101
 #   ifndef SEMAPHORES_SYSV  #   ifndef SEMAPHORES_SYSV
 #       include <semaphore.h>  #       include <semaphore.h>
 #   else  #   else
   #       include <sys/ipc.h>
   #       include <sys/sem.h>
   
 #       ifdef OS2  #       ifdef OS2
 #           define INCL_DOSSEMAPHORES  #           define INCL_DOSSEMAPHORES
 #           define INCL_DOSMEMMGR  #           define INCL_DOSMEMMGR
Line 117 Line 120
                 ULONG   allocated;                  ULONG   allocated;
             } sem_t;              } sem_t;
 #       else  #       else
 #           include <sys/ipc.h>              typedef struct
 #           include <sys/sem.h>              {
             typedef int sem_t;                  int             sem;
                   unsigned char   *path;
                   pid_t           pid;
               } sem_t;
 #       endif  #       endif
   
 #       define SEM_FAILED   NULL  #       define SEM_FAILED   NULL
Line 187 Line 193
   
 #include "librplprototypes.h"  #include "librplprototypes.h"
   
 #ifndef UNIX_PATH_MAX  #ifndef RPLARGS
     struct sockaddr_un sizecheck;  #   ifndef UNIX_PATH_MAX
 #   define UNIX_PATH_MAX sizeof(sizecheck.sun_path)          struct sockaddr_un sizecheck;
   #       define UNIX_PATH_MAX sizeof(sizecheck.sun_path)
   #   endif
 #endif  #endif
   
   /*
   ================================================================================
     Bugs spécifiques
   ================================================================================
   */
   
 #ifdef _BROKEN_SIGINFO  #ifdef _BROKEN_SIGINFO
 #   define SIGHANDLER_ARGS  int signal  #   define SIGHANDLER_ARGS  int signal
 #   ifdef SA_SIGINFO  #   ifdef SA_SIGINFO
Line 199 Line 213
 #   endif  #   endif
 #   define SA_SIGINFO   0  #   define SA_SIGINFO   0
   
 #   define kill(pid, signal)            rpl_kill(pid, signal)  #   define kill(pid, signal)            kill_broken_siginfo(pid, signal)
 #   define pthread_kill(tid, signal)    rpl_pthread_kill(tid, signal)  #   define pthread_kill(tid, signal)    pthread_kill_broken_siginfo(tid, signal)
     int rpl_kill(pid_t pid, int signal);      int kill_broken_siginfo(pid_t pid, int signal);
     int rpl_pthread_kill(pthread_t tid, int signal);      int pthread_kill_broken_siginfo(pthread_t tid, int signal);
 #else  #else
 #   define SIGHANDLER_ARGS  int signal, siginfo_t *siginfo, void *context  #   define SIGHANDLER_ARGS  int signal, siginfo_t *siginfo, void *context
 #endif  #endif
   
 #define ftok(path, proj) \  #ifdef OpenBSD
     ({ \  #   ifdef PTHREAD_SCOPE_SYSTEM
         key_t           key; \  #       undef PTHREAD_SCOPE_SYSTEM
         struct stat     s; \  #   endif
         while(stat(path, &s) != 0); \  #   define PTHREAD_SCOPE_SYSTEM 0
         errno = 0; \  #endif
         key = ftok(path, proj); \  
         if (key != -1) \  #if ! defined(UNION_SEMUN) && defined(SEMAPHORES_SYSV)
             key |= ((((key_t) s.st_dev) & 0xFF) << 8) | \  union semun
                     ((((key_t) s.st_ino) & 0xFFFF) << 16); \  {
         key; \      int                 val;
     })      struct semid_ds     *buf;
       unsigned short      *array;
       struct seminfo      *__buf;
   };
   #endif
   
   
 /*  /*
 ================================================================================  ================================================================================
Line 711  pid_t debug_fork(); Line 730  pid_t debug_fork();
 #ifdef DEBUG_ERREURS  #ifdef DEBUG_ERREURS
 #   ifdef MESSAGES  #   ifdef MESSAGES
 #       define __erreur(i)  i  #       define __erreur(i)  i
   #       define __erreur_(i) i
 #   else  #   else
   #       undef _ERREURS_VARIABLES
   #       ifdef _ERREURS_VARIABLES
   #           define __erreur_(i) __erreur(i)
   #       else
   #           define __erreur_(i) i
   #       endif
 #       define __erreur(i)  ({ if (strstr(__FUNCTION__, "recherche_variable") \  #       define __erreur(i)  ({ if (strstr(__FUNCTION__, "recherche_variable") \
                 == NULL) ufprintf(stderr, "ERROR %d AT %s() LINE %d\n", \                  == NULL) ufprintf(stderr, \
                 i, __FUNCTION__, __LINE__); i; })                  "ERROR %d AT %s() FROM %s LINE %d\n", \
                   i, __FUNCTION__, __FILE__, __LINE__); i; })
 #   endif  #   endif
 #else  #else
 #   define __erreur(i)  i  #   define __erreur(i)  i
   #   define __erreur_(i) i
 #endif  #endif
   
   
Line 725  pid_t debug_fork(); Line 753  pid_t debug_fork();
 #ifndef RPLARGS  #ifndef RPLARGS
 #   define d_es                                 2000  #   define d_es                                 2000
 #   define d_es_allocation_memoire              __erreur(2001)  #   define d_es_allocation_memoire              __erreur(2001)
 #   define d_es_variable_introuvable            __erreur(2002)  #   define d_es_variable_introuvable            __erreur_(2002)
 #   define d_es_pile_vide                       __erreur(2003)  #   define d_es_pile_vide                       __erreur(2003)
 #   define d_es_end_incoherent                  __erreur(2004)  #   define d_es_end_incoherent                  __erreur(2004)
 #   define d_es_peripherique_stdin              __erreur(2005)  #   define d_es_peripherique_stdin              __erreur(2005)
Line 738  pid_t debug_fork(); Line 766  pid_t debug_fork();
 #   define d_es_interruption_invalide           __erreur(2012)  #   define d_es_interruption_invalide           __erreur(2012)
 #   define d_es_contexte                        __erreur(2013)  #   define d_es_contexte                        __erreur(2013)
 #   define d_es_somme_controle                  __erreur(2014)  #   define d_es_somme_controle                  __erreur(2014)
   #   define d_es_semaphore                       __erreur(2015)
 #endif  #endif
   
 /*  /*
Line 803  pid_t debug_fork(); Line 832  pid_t debug_fork();
 #   define d_ex_absence_graphique_courant       __erreur(9)  #   define d_ex_absence_graphique_courant       __erreur(9)
 #   define d_ex_erreur_traitement_condition     __erreur(10)  #   define d_ex_erreur_traitement_condition     __erreur(10)
 #   define d_ex_erreur_traitement_boucle        __erreur(11)  #   define d_ex_erreur_traitement_boucle        __erreur(11)
 #   define d_ex_variable_non_definie            __erreur(12)  #   define d_ex_variable_non_definie            __erreur_(12)
 #   define d_ex_drapeau_inexistant              __erreur(13)  #   define d_ex_drapeau_inexistant              __erreur(13)
 #   define d_ex_nom_invalide                    __erreur(14)  #   define d_ex_nom_invalide                    __erreur(14)
 #   define d_ex_element_inexistant              __erreur(15)  #   define d_ex_element_inexistant              __erreur(15)

Removed from v.1.58  
changed lines
  Added in v.1.61


CVSweb interface <joel.bertrand@systella.fr>