--- rpl/src/semaphores.c 2011/09/19 17:33:17 1.32 +++ rpl/src/semaphores.c 2011/09/20 07:16:40 1.33 @@ -250,7 +250,7 @@ sem_init_SysV(sem_t *semaphore, int shar sprintf((*semaphore).path, "%s/RPL-SIGSEMAPHORE-%d", racine_segment, (int) getpid()); - if ((desc = open((*semaphore).path, O_CREAT | O_EXCL | + if ((desc = open((*semaphore).path, O_RDWR | O_CREAT | O_EXCL, S_IRUSR | S_IWUSR)) == -1) { free((*semaphore).path); @@ -793,8 +793,8 @@ sem_t va_end(liste); # ifndef OS2 // IPCS_SYSV - if ((desc = open(nom_absolu, O_CREAT | O_EXCL | S_IRUSR | S_IWUSR)) - == -1) + if ((desc = open(nom_absolu, O_CREAT | O_EXCL | O_RDWR, + S_IRUSR | S_IWUSR)) == -1) { free(semaphore); free(nom_absolu);