In parole povere mkdir (path, 04777) mi crea la directory, ma i permessi vengono settati a 755, quindi per ora uso qualcosa del genere:
- Codice: Seleziona tutto
rval = mkdir (path, 0777);
if (rval < 0) ... /* errore */
rval = chmod (path, S_IRUSR|S_IWUSR|S_IXUSR|S_IRGRP|S_IWGRP|S_IXGRP|S_IROTH|S_IWOTH|S_IXOTH);
if (rval < 0) ... /* errore */
Nel man dice:
- Codice: Seleziona tutto
The parameter mode specifies the permissions to use. It is modified by the process's umask in the usual
way: the permissions of the created directory are (mode & ~umask & 0777). Other mode bits of the created
directory depend on the operating system. For Linux, see below.
Dunque come si fa a calcolare il secondo parametro di mkdir() a prescindere da umask considerando che si vuole ottenere una directory con permessi 777 ?
Inoltre è consigliabile settare i permessi direttamente alla creazione della directory, o è meglio farlo successivamente con chmod() ?



