Diff for /rpl/src/rpl.h between versions 1.60 and 1.69

version 1.60, 2010/08/22 16:38:36 version 1.69, 2010/09/08 17:18:37
Line 1 Line 1
 /*  /*
 ================================================================================  ================================================================================
   RPL/2 (R) version 4.0.18    RPL/2 (R) version 4.0.19
   Copyright (C) 1989-2010 Dr. BERTRAND Joël    Copyright (C) 1989-2010 Dr. BERTRAND Joël
   
   This file is part of RPL/2.    This file is part of RPL/2.
Line 98 Line 98
 #       include <sys/shm.h>  #       include <sys/shm.h>
 #   endif  #   endif
   
 #   ifndef SEMAPHORES_SYSV  #   ifndef IPCS_SYSV
 #       include <semaphore.h>  #       include <semaphore.h>
 #   else  #   else
 #       include <sys/ipc.h>  #       include <sys/ipc.h>
Line 193 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
   
 /*  /*
Line 211 Line 213
 #   endif  #   endif
 #   define SA_SIGINFO   0  #   define SA_SIGINFO   0
   
 #   define kill(pid, signal)            kill_broken_siginfo(pid, signal)  #   ifndef __BROKEN_SIGINFO_ROUTINES__
 #   define pthread_kill(tid, signal)    pthread_kill_broken_siginfo(tid, signal)  
   // pthread_kill() est une macro sous OS/2.
   #       ifdef pthread_kill
   #           undef pthread_kill
   #       endif
   
   #       define kill(a, b)           kill_broken_siginfo(a, b)
   #       define pthread_kill(a, b)   pthread_kill_broken_siginfo(a, b)
   #   endif
   
     int kill_broken_siginfo(pid_t pid, int signal);      int kill_broken_siginfo(pid_t pid, int signal);
     int pthread_kill_broken_siginfo(pthread_t tid, int signal);      int pthread_kill_broken_siginfo(pthread_t tid, int signal);
       pid_t origine_signal(int signal);
       int queue_in(pid_t pid, 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
Line 226 Line 239
 #   define PTHREAD_SCOPE_SYSTEM 0  #   define PTHREAD_SCOPE_SYSTEM 0
 #endif  #endif
   
 #if ! defined(UNION_SEMUN) && defined(SEMAPHORES_SYSV)  #ifdef OS2
   #   define readline(s) readline_wrapper(s)
       unsigned char *readline_wrapper(unsigned char *s);
   #endif
   
   #if ! defined(UNION_SEMUN) && defined(IPCS_SYSV)
 union semun  union semun
 {  {
     int                 val;      int                 val;
Line 243  union semun Line 261  union semun
 ================================================================================  ================================================================================
 */  */
   
 #ifdef SEMAPHORES_SYSV  #ifdef IPCS_SYSV
 #   define sem_init(a, b, c)    sem_init_SysV(a, b, c)  #   define sem_init(a, b, c)    sem_init_SysV(a, b, c)
 #   define sem_destroy(a)       sem_destroy_SysV(a)  #   define sem_destroy(a)       sem_destroy_SysV(a)
 #   define sem_wait(a)          sem_wait_SysV(a)  #   define sem_wait(a)          sem_wait_SysV(a)
Line 484  int sem_getvalue2(sem_t *semaphore, int Line 502  int sem_getvalue2(sem_t *semaphore, int
 #   define fopen(...) ({ FILE *desc; \  #   define fopen(...) ({ FILE *desc; \
             while((desc = fopen(__VA_ARGS__)) == NULL) \              while((desc = fopen(__VA_ARGS__)) == NULL) \
             { if ((errno != EINTR) && (errno != 0)) break; } desc; })              { if ((errno != EINTR) && (errno != 0)) break; } desc; })
   #   define freopen(...) ({ FILE *desc; \
               while((desc = freopen(__VA_ARGS__)) == NULL) \
               { if ((errno != EINTR) && (errno != 0)) break; } desc; })
 #   define fclose(...) ({ int ios; \  #   define fclose(...) ({ int ios; \
             while((ios = fclose(__VA_ARGS__)) != 0) \              while((ios = fclose(__VA_ARGS__)) != 0) \
             { if ((errno != EINTR) && (errno != 0)) break; } ios; })              { if ((errno != EINTR) && (errno != 0)) break; } ios; })
Line 1738  typedef struct processus Line 1759  typedef struct processus
   
 #   if !defined(Cygwin)  #   if !defined(Cygwin)
 #       if !(OpenBSD)  #       if !(OpenBSD)
     stack_t                     pile_signal;              stack_t             pile_signal;
 #       else  #       else
 #           ifdef SA_ONSTACK  #           ifdef SA_ONSTACK
 #               undef SA_ONSTACK  #               undef SA_ONSTACK
Line 1746  typedef struct processus Line 1767  typedef struct processus
 #           define SA_ONSTACK   0  #           define SA_ONSTACK   0
 #       endif  #       endif
 #   else  #   else
 #   define SA_ONSTACK           0  #       define SA_ONSTACK       0
 #   define RTLD_LOCAL           0  #       define RTLD_LOCAL       0
 #   endif  #   endif
   
 /* Contextes                                            */  /* Contextes                                            */
Line 2021  typedef struct processus Line 2042  typedef struct processus
     volatile sig_atomic_t       var_volatile_traitement_retarde_stop;      volatile sig_atomic_t       var_volatile_traitement_retarde_stop;
     volatile sig_atomic_t       var_volatile_traitement_sigint;      volatile sig_atomic_t       var_volatile_traitement_sigint;
   
       volatile sig_atomic_t       var_volatile_processus_racine;
     volatile sig_atomic_t       var_volatile_processus_pere;      volatile sig_atomic_t       var_volatile_processus_pere;
     volatile sig_atomic_t       var_volatile_recursivite;      volatile sig_atomic_t       var_volatile_recursivite;
   

Removed from v.1.60  
changed lines
  Added in v.1.69


CVSweb interface <joel.bertrand@systella.fr>