Diff for /rpl/src/rpl.h between versions 1.129 and 1.130

version 1.129, 2011/09/20 09:51:43 version 1.130, 2011/09/20 14:36:30
Line 101 Line 101
 #   include <pwd.h>  #   include <pwd.h>
 #   include <sys/shm.h>  #   include <sys/shm.h>
   
 #   ifndef __RPLCAS  #   ifndef IPCS_SYSV
 #       ifndef IPCS_SYSV  #       include <semaphore.h>
 #           include <semaphore.h>  #   else
 #       else  #       include <sys/ipc.h>
 #           include <sys/ipc.h>  #       include <sys/sem.h>
 #           include <sys/sem.h>  
   
 #           ifdef OS2  
 #               define INCL_DOSSEMAPHORES  
 #               define INCL_DOSMEMMGR  
 #               define INCL_DOSERRORS  
 #               include <os2.h>  
   
                 typedef struct _OS2SEM  
                 {  
                     HMTX    hmtx;  
                     HEV     hev;  
                     ULONG   shared;  
                     ULONG   *cnt;  
                     ULONG   *nopened;  
                     ULONG   allocated;  
                 } sem_t;  
 #           else // IPCS_SYSV  
                 typedef struct  
                 {  
                     int             sem;  
                     int             alloue;  
                     unsigned char   *path;  
                     pid_t           pid;  
                 } sem_t;  
 #           endif  
   
 #           ifndef SEM_FAILED  #       ifdef OS2
 #               define SEM_FAILED   NULL  #           define INCL_DOSSEMAPHORES
 #           endif  #           define INCL_DOSMEMMGR
   #           define INCL_DOSERRORS
   #           include <os2.h>
   
               typedef struct _OS2SEM
               {
                   HMTX    hmtx;
                   HEV     hev;
                   ULONG   shared;
                   ULONG   *cnt;
                   ULONG   *nopened;
                   ULONG   allocated;
               } sem_t;
   #       else // IPCS_SYSV
               typedef struct
               {
                   int             sem;
                   int             alloue;
                   unsigned char   *path;
                   pid_t           pid;
                   pthread_t       tid;
               } sem_t;
   #       endif
   
             sem_t *sem_open_SysV(const char *nom, int oflag, ...);  #       ifndef SEM_FAILED
             int sem_init_SysV(sem_t *sem, int shared, unsigned int value);  #           define SEM_FAILED   NULL
             int sem_close_SysV(sem_t *sem);  
             int sem_wait_SysV(sem_t *sem);  
             int sem_trywait_SysV(sem_t *sem);  
             int sem_post_SysV(sem_t *sem);  
             int sem_getvalue_SysV(sem_t *sem, int *value);  
             int sem_unlink_SysV(const char *nom);  
             int sem_destroy_SysV(sem_t *sem);  
 #       endif  #       endif
   
           sem_t *sem_open_SysV(const char *nom, int oflag, ...);
           int sem_init_SysV(sem_t *sem, int shared, unsigned int value);
           int sem_close_SysV(sem_t *sem);
           int sem_wait_SysV(sem_t *sem);
           int sem_trywait_SysV(sem_t *sem);
           int sem_post_SysV(sem_t *sem);
           int sem_getvalue_SysV(sem_t *sem, int *value);
           int sem_unlink_SysV(const char *nom);
           int sem_destroy_SysV(sem_t *sem);
 #   endif  #   endif
   
 #   include <setjmp.h>  #   include <setjmp.h>
Line 455  typedef unsigned char   t_8_bits; Line 454  typedef unsigned char   t_8_bits;
   
 #ifdef SEMAPHORES_NOMMES  #ifdef SEMAPHORES_NOMMES
 sem_t *sem_init2(unsigned int valeur, pid_t pid);  sem_t *sem_init2(unsigned int valeur, pid_t pid);
   sem_t *sem_init3(unsigned int valeur, pid_t pid, pthread_t tid);
 int sem_destroy2(sem_t *semaphore_p, pid_t pid);  int sem_destroy2(sem_t *semaphore_p, pid_t pid);
   int sem_destroy3(sem_t *semaphore_p, pid_t pid, pthread_t tid);
 int sem_getvalue2(sem_t *semaphore, int *valeur);  int sem_getvalue2(sem_t *semaphore, int *valeur);
 sem_t *sem_open2(pid_t pid);  sem_t *sem_open2(pid_t pid);
   
Line 2178  typedef struct processus Line 2179  typedef struct processus
     pthread_mutex_t             mutex_allocation;      pthread_mutex_t             mutex_allocation;
   
     // Mutex autorisant les fork()      // Mutex autorisant les fork()
     sem_t                       semaphore_fork;      sem_t
   #   ifdef SEMAPHORES_NOMMES
           *
   #   endif
                                   semaphore_fork;
   
 /* Mutexes                                          */  /* Mutexes                                          */
   

Removed from v.1.129  
changed lines
  Added in v.1.130


CVSweb interface <joel.bertrand@systella.fr>