boostorg / boostorg/interprocess
Named mutex might not value permissions correctly
- Lingua principale
- C++
- Stelle
- 185
- Fork
- 131
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
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
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Direzione di ricerca
Inizia tracciando il percorso POSIX named_mutex fino alla chiamata a ::sem_open descritta nell'issue, concentrandoti su come i valori di Permissions Object interagiscono con la umask del processo. Conferma i permessi risultanti con set_unrestricted() e determina quindi se il risultato previsto è una modifica del comportamento o la documentazione della limitazione.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- cpp
- Ambito
- operating-systems
- Tipo di issue
- Bug
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 35/100