LINUX.ORG.RU

Не создается семафор при указании прав доступа.

 ,


0

2

Если при создании семафора я указываю права доступа

semget(1, 1, 0666 | IPC_CREAT);
то при запуске программы семафор не создается, и errno присваевается значение EACCES. Если запускать программу из-под рута, то все работает. Семафор также создается, если не указывать права доступа
semget(1, 1, IPC_CREAT);
но в таком случае с ним не получится работать. В чем у меня проблема, и в какую сторону копать?


Видимо для семафора с key == 1 непривилегированный процесс не может получить права на запись. Попробуй:

 semget(1, 1, 0444 | IPC_CREAT);
Если сработает, то я прав.

NegatiV
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.