[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Le man 2 umask



Christophe Lohr wrote:
> Bonjour,
>   D'apèrs le man 2 umask:
> 
> DESCRIPTION
>        umask()  fixe le masque de création de fichiers à la valeur mask
> & 0777
> 
> Hors il semble que pour les fichiers les permissions de référence soient
> plutôt 0666, et pour les répertoire 0777.
> http://www.tech-faq.com/umask.shtml

Non, la doc paraît juste.
l'appel système umask() permet de définir une valeur (appelée UMASK dans mon
texte ici). L'appel système calcul bien toujours UMASK= mask & 0777
(mask étant le paramètre de l'appel système). Le "& 0777" montre que
les bits autres que les classiques sont ignorés par umask().

Quand open() est appelé pour créer un fichier, il a un paramètre 'mode'.
Les permissions finales sont alors (mode & ~UMASK).
Il se trouve que, si les appli sont bien écrites, mode sera 0666 pour un
fichier et 0777 pour un dossier (ou un programme, comme ceux produits
par gcc). Mais cette info n'est pas vraiment pertinente pour la doc de
umask() (éventuellement pour celle de open())

> Peut être qu'il conviendrait de faire ressortir cette différence plus
> explicitement.

Au niveau de l'appel système umask(), cette différence n'existe pas.

  Cordialement,
    Vincent

> Cordialement
> CL


-- 
Vincent Danjean       GPG key ID 0x9D025E87         vdanjean@debian.org
GPG key fingerprint: FC95 08A6 854D DB48 4B9A  8A94 0BF7 7867 9D02 5E87
Unofficial packages: http://moais.imag.fr/membres/vincent.danjean/deb.html
APT repo:  deb http://perso.debian.org/~vdanjean/debian unstable main


Reply to: