boostorg / boostorg/interprocess
Named mutex might not value permissions correctly
- Lenguaje dominante
- C++
- Estrellas
- 185
- Forks
- 131
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
Hi!
When using a named_mutex within POSIX, and setting the Permissions Object, everything boils down to an ::sem_open call. There, the permissions are passed. But ::sem_open masks the permissions with the processes umask. Therefore, the semaphore might not have 0666 permissions, but e.g. 644, even though, permissions were passed with set_unrestricted().
Workaround there would be setting umask to 0 before ::sem_open, and restoring again after.
At least, this behaviour should be documented.
Regards,
Matthias
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Línea de trabajo
Comienza rastreando la ruta POSIX named_mutex hasta la llamada a ::sem_open descrita en el issue, centrándote en cómo interactúan los valores de Permissions Object con la umask del proceso. Confirma los permisos resultantes con set_unrestricted() y determina después si el resultado previsto es un cambio de comportamiento o la documentación de la limitación.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- cpp
- Área
- operating-systems
- Tipo de issue
- Error
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 35/100