Diff for /rpl/src/rpl.h between versions 1.243 and 1.245

version 1.243, 2014/05/16 11:31:13 version 1.245, 2014/06/16 18:48:22
Line 116 Line 116
 #       include <sys/ipc.h>  #       include <sys/ipc.h>
 #       include <sys/sem.h>  #       include <sys/sem.h>
   
 #       ifndef __RPLCAS  #       ifdef OS2
 #           ifdef OS2  #           define INCL_DOSSEMAPHORES
 #               define INCL_DOSSEMAPHORES  #           define INCL_DOSMEMMGR
 #               define INCL_DOSMEMMGR  #           define INCL_DOSERRORS
 #               define INCL_DOSERRORS  #           include <os2.h>
 #               include <os2.h>  
               typedef struct _OS2SEM
                 typedef struct _OS2SEM              {
                 {                  HMTX    hmtx;
                     HMTX    hmtx;                  HEV     hev;
                     HEV     hev;                  ULONG   shared;
                     ULONG   shared;                  ULONG   *cnt;
                     ULONG   *cnt;                  ULONG   *nopened;
                     ULONG   *nopened;                  ULONG   allocated;
                     ULONG   allocated;              } sem_t;
                 } sem_t;  #       else // IPCS_SYSV
 #           else // IPCS_SYSV              typedef struct
                 typedef struct              {
                 {                  int             sem;
                     int             sem;                  int             alloue;
                     int             alloue;                  unsigned char   *path;
                     unsigned char   *path;                  pid_t           pid;
                     pid_t           pid;                  pthread_t       tid;
                     pthread_t       tid;              } sem_t;
                 } sem_t;  
 #           endif  
   
 #           ifndef SEM_FAILED  
 #               define SEM_FAILED   NULL  
 #           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_timedwait_SysV(sem_t *sem, struct timespec *ts);  
             int sem_post_SysV(sem_t *sem);  
             int sem_getvalue_SysV(sem_t *sem, int *value);  
             int sem_unlink_SysV(char *nom);  
             int sem_destroy_SysV(sem_t *sem);  
 #       endif  #       endif
   
   #       ifndef SEM_FAILED
   #           define SEM_FAILED   NULL
   #       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_timedwait_SysV(sem_t *sem, struct timespec *ts);
           int sem_post_SysV(sem_t *sem);
           int sem_getvalue_SysV(sem_t *sem, int *value);
           int sem_unlink_SysV(char *nom);
           int sem_destroy_SysV(sem_t *sem);
 #   endif  #   endif
   
 #   include <setjmp.h>  #   include <setjmp.h>
Line 485  union semun Line 483  union semun
     __EXTERN__ sem_t __PTR__        semaphore_gestionnaires_signaux;      __EXTERN__ sem_t __PTR__        semaphore_gestionnaires_signaux;
   
     __EXTERN__ volatile int         routine_recursive;      __EXTERN__ volatile int         routine_recursive;
 #endif  
   
 #define SEM_FORK                0  #   define SEM_FORK             0
 #define SEM_QUEUE               1  #   define SEM_QUEUE                1
 #define SEM_SIGNAUX             2  #   define SEM_SIGNAUX              2
 #define SEM_SIGNALISATION       3  #   define SEM_SIGNALISATION        3
 #define SEM_ARRET_SIGNALISATION 4  #   define SEM_ARRET_SIGNALISATION  4
 sem_t *sem_init2(unsigned int valeur, pid_t pid, int ordre);  
 sem_t *sem_init3(unsigned int valeur, pid_t pid, pthread_t tid, int ordre);      sem_t *sem_init2(unsigned int valeur, pid_t pid, int ordre);
 int sem_destroy2(sem_t *semaphore_p, pid_t pid, int ordre);      sem_t *sem_init3(unsigned int valeur, pid_t pid, pthread_t tid, int ordre);
 int sem_destroy3(sem_t *semaphore_p, pid_t pid, pthread_t tid, int ordre);      int sem_destroy2(sem_t *semaphore_p, pid_t pid, int ordre);
 int sem_getvalue2(sem_t *semaphore, int *valeur);      int sem_destroy3(sem_t *semaphore_p, pid_t pid, pthread_t tid, int ordre);
 sem_t *sem_open2(pid_t pid, int ordre);      int sem_getvalue2(sem_t *semaphore, int *valeur);
       sem_t *sem_open2(pid_t pid, int ordre);
   #endif
   
 // Le mutex est là uniquement pour pouvoir émuler le comportement  // Le mutex est là uniquement pour pouvoir émuler le comportement
 // de sem_getvalue() sur un système comme MacOS X qui ne possède pas  // de sem_getvalue() sur un système comme MacOS X qui ne possède pas

Removed from v.1.243  
changed lines
  Added in v.1.245


CVSweb interface <joel.bertrand@systella.fr>