Pamięci współdzielone POSIX i uprawnienia semaforów ustawione nieprawidłowo przez wywołania otwarte
Próbuję utworzyć pamięć współdzieloną, która będzie używana przez kilka procesów, które niekoniecznie będą uruchamiane przez tego samego użytkownika, dlatego tworzę segment z następującą linią:
fd = shm_open(SHARE_MEM_NAME,O_RDWR | O_CREAT,0606);
jednak gdy sprawdzę uprawnienia pliku utworzonego w / dev / shm, są to:
-rw----r-- 1 lmccauslin lmccauslin 1784 2012-08-10 17:11 /dev/shm/CubeConfigShare
nie-rw----rw-
jak się spodziewałem.
uprawnienia do / dev / shm to lrwxrwxrwx.
To samo dzieje się z semaforem utworzonym podobnie.
wersja jądra: 3.0.0-23-generic
wersja glibc: EGLIBC 2.13-20ubuntu5.1
Czy ktoś ma jakieś pomysły?